configures and builds okay.
testsuite wasn't checked, will be checked.
diff including the plibc removal is now around 14370 lines of code less.
-Mon Sep 9 00:00:00 UTC 2019
+Mon Sep 10 00:00:00 UTC 2019
Drop win32 and mingw support after discussion with
Christian. It has been unmaintained in out code base
for years and there are no known users.
DLLDIR=lib
UNIXONLY="#"
],
- [*cygwin*],[
- AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a Cygwin system])
- AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
- AC_CHECK_LIB(intl, gettext)
- CFLAGS="-mms-bitfields $CFLAGS"
- build_target="cygwin"
- LIBPREFIX=lib
- DLLDIR=bin
- AC_PROG_CXX
- UNIXONLY=""
- ],
- [*mingw*],[
- AC_DEFINE_UNQUOTED(MINGW,1,[This is a MinGW system])
- AC_DEFINE_UNQUOTED(WINDOWS,1,[This is a Windows system])
- AC_DEFINE_UNQUOTED(_WIN32,1,[This is a Windows system])
- AC_CHECK_LIB(intl, gettext)
- LDFLAGS="$LDFLAGS -Wl,--export-all-symbols"
- LIBS="$LIBS -lws2_32 -lgnurx -lole32"
- CFLAGS="-mms-bitfields $CFLAGS"
- CPPFLAGS="-D_WIN32_WINNT=0x0501 -DHAVE_STAT64=1 -D__USE_MINGW_ANSI_STDIO=1 $CPPFLAGS"
- build_target="mingw"
- AC_PROG_CXX
- LIBPREFIX=lib
- DLLDIR=bin
- UNIXONLY=""
- funcstocheck=""
- native_srcdir=$(cd $srcdir; pwd -W)
- ],
[gnu*],[
AC_DEFINE_UNQUOTED(GNU,1,[This is a GNU system])
build_target="gnu"
AC_MSG_CHECKING([for build target])
AM_CONDITIONAL(DARWIN, test "$build_target" = "darwin")
-AM_CONDITIONAL(CYGWIN, test "$build_target" = "cygwin")
-AM_CONDITIONAL(MINGW, test "$build_target" = "mingw")
AM_CONDITIONAL(SOLARIS, test "$build_target" = "solaris")
AM_CONDITIONAL(XFREEBSD, test "$build_target" = "freebsd")
AM_CONDITIONAL(OPENBSD, test "$build_target" = "openbsd")
[VAR_IP6TABLES_BINARY="/sbin/ip6tables"],
[AS_IF([test -x "/usr/sbin/ip6tables"],
[VAR_IP6TABLES_BINARY="/usr/sbin/ip6tables"])])])
-
+
AS_IF([test x"$VAR_IP6TABLES_BINARY" != x"false"],
[AC_DEFINE_UNQUOTED([IP6TABLES], "$VAR_IP6TABLES_BINARY", [Path to ip6tables])],
AM_CONDITIONAL(HAVE_GETADDRINFO_A,
[test "$have_addrinfo_a" = 1])
-# tests only run on Windows
-AS_IF([test "x$build_target" = "xmingw"],
- [AC_CHECK_LIB(gnurx,
- regexec,
- [],
- [AC_MSG_ERROR([GNUnet requires libgnurx on Windows])])])
-
# libgcrypt
gcrypt=0
NEED_LIBGCRYPT_API=1
AC_CHECK_TYPES([sigset_t, off_t], [], [], [#include <sys/types.h>])
AC_CHECK_TYPES([size_t], [], [], [#include <stdio.h>])
-AS_IF([test "$build_target" = "mingw"]
- [CYGWIN_MYSQL_MAGIC="#include <mysql/my_global.h>"])
-
# test for mysql
mysql=false
mysqlfail=false
[yes|""],[
AC_CHECK_HEADERS(mysql/mysql.h,
AC_CHECK_LIB(mysqlclient, mysql_init,
- mysql=true), [], [$CYGWIN_MYSQL_MAGIC])
+ mysql=true), [], [])
],[
LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql $LDFLAGS $ZLIBS"
CPPFLAGS="-I$with_mysql/include $CPPFLAGS"
MYSQL_LDFLAGS="-L$with_mysql/lib -L$with_mysql/lib/mysql"
MYSQL_CPPFLAGS="-I$with_mysql/include"
- mysql=true), [], [$CYGWIN_MYSQL_MAGIC])
+ mysql=true), [], [])
])
],
[AC_MSG_RESULT([--with-mysql not specified])
MYSQL_LDFLAGS="-L$MYSQL_LIBDIR"
mysql=true
- , [], [$CYGWIN_MYSQL_MAGIC])])
+ , [], [])])
])
AC_SUBST(MYSQL_LDFLAGS)
[
AC_MSG_CHECKING(mysql version)
AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
- [[$CYGWIN_MYSQL_MAGIC
+ [[
#include <mysql/mysql.h>]],
[[
#if (MYSQL_VERSION_ID < 40100)
+++ /dev/null
- GNU GENERAL PUBLIC LICENSE
- Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
- 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The licenses for most software are designed to take away your
-freedom to share and change it. By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users. This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it. (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.) You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
- To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have. You must make sure that they, too, receive or can get the
-source code. And you must show them these terms so they know their
-rights.
-
- We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
- Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software. If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
- Finally, any free program is threatened constantly by software
-patents. We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary. To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-\f
- GNU GENERAL PUBLIC LICENSE
- TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
- 0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License. The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language. (Hereinafter, translation is included without limitation in
-the term "modification".) Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope. The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
- 1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
- 2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
- a) You must cause the modified files to carry prominent notices
- stating that you changed the files and the date of any change.
-
- b) You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any
- part thereof, to be licensed as a whole at no charge to all third
- parties under the terms of this License.
-
- c) If the modified program normally reads commands interactively
- when run, you must cause it, when started running for such
- interactive use in the most ordinary way, to print or display an
- announcement including an appropriate copyright notice and a
- notice that there is no warranty (or else, saying that you provide
- a warranty) and that users may redistribute the program under
- these conditions, and telling the user how to view a copy of this
- License. (Exception: if the Program itself is interactive but
- does not normally print such an announcement, your work based on
- the Program is not required to print an announcement.)
-\f
-These requirements apply to the modified work as a whole. If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works. But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
- 3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
- a) Accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections
- 1 and 2 above on a medium customarily used for software interchange; or,
-
- b) Accompany it with a written offer, valid for at least three
- years, to give any third party, for a charge no more than your
- cost of physically performing source distribution, a complete
- machine-readable copy of the corresponding source code, to be
- distributed under the terms of Sections 1 and 2 above on a medium
- customarily used for software interchange; or,
-
- c) Accompany it with the information you received as to the offer
- to distribute corresponding source code. (This alternative is
- allowed only for noncommercial distribution and only if you
- received the program in object code or executable form with such
- an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it. For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable. However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-\f
- 4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License. Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
- 5. You are not required to accept this License, since you have not
-signed it. However, nothing else grants you permission to modify or
-distribute the Program or its derivative works. These actions are
-prohibited by law if you do not accept this License. Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
- 6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions. You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
- 7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all. For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices. Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-\f
- 8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded. In such case, this License incorporates
-the limitation as if written in the body of this License.
-
- 9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number. If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation. If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
- 10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission. For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this. Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
- NO WARRANTY
-
- 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
- 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
- END OF TERMS AND CONDITIONS
-\f
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
- <one line to give the program's name and a brief idea of what it does.>
- Copyright (C) <year> <name of author>
-
- 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 2 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, write to the Free Software
- Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
- Gnomovision version 69, Copyright (C) year name of author
- Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. Here is a sample; alter the names:
-
- Yoyodyne, Inc., hereby disclaims all copyright interest in the program
- `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
- <signature of Ty Coon>, 1 April 1989
- Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs. If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library. If this is what you want to do, use the GNU Library General
-Public License instead of this License.
+++ /dev/null
-You need devcon.exe or equivalent functionality to install the openvpn-signed driver included in tap-win32-signed.zip.\r
-This version of tap32 works with gnunet-vpn-helper-windows and can be loaded/installed by it. \r
-\r
-Additional information is included in OemWin2k.inf which is included in the driver archives.
\ No newline at end of file
+++ /dev/null
-; ****************************************************************************\r
-; * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. *\r
-; * This program is free software; you can redistribute it and/or modify *\r
-; * it under the terms of the GNU General Public License version 2 *\r
-; * as published by the Free Software Foundation. *\r
-; ****************************************************************************\r
-\r
-; SYNTAX CHECKER\r
-; cd \WINDDK\3790\tools\chkinf\r
-; chkinf c:\src\openvpn\tap-win32\i386\oemwin2k.inf\r
-; OUTPUT -> file:///c:/WINDDK/3790/tools/chkinf/htm/c%23+src+openvpn+tap-win32+i386+__OemWin2k.htm\r
-\r
-; INSTALL/REMOVE DRIVER\r
-; tapinstall install OemWin2k.inf TAP0901\r
-; tapinstall update OemWin2k.inf TAP0901\r
-; tapinstall remove TAP0901\r
-\r
-;*********************************************************\r
-; Note to Developers:\r
-;\r
-; If you are bundling the TAP-Windows driver with your app,\r
-; you should try to rename it in such a way that it will\r
-; not collide with other instances of TAP-Windows defined\r
-; by other apps. Multiple versions of the TAP-Windows\r
-; driver, each installed by different apps, can coexist\r
-; on the same machine if you follow these guidelines.\r
-; NOTE: these instructions assume you are editing the\r
-; generated OemWin2k.inf file, not the source\r
-; OemWin2k.inf.in file which is preprocessed by winconfig\r
-; and uses macro definitions from settings.in.\r
-;\r
-; (1) Rename all tapXXXX instances in this file to\r
-; something different (use at least 5 characters\r
-; for this name!)\r
-; (2) Change the "!define TAP" definition in openvpn.nsi\r
-; to match what you changed tapXXXX to.\r
-; (3) Change TARGETNAME in SOURCES to match what you\r
-; changed tapXXXX to.\r
-; (4) Change TAP_COMPONENT_ID in common.h to match what\r
-; you changed tapXXXX to.\r
-; (5) Change SZDEPENDENCIES in service.h to match what\r
-; you changed tapXXXX to.\r
-; (6) Change DeviceDescription and Provider strings.\r
-; (7) Change PRODUCT_TAP_WIN_DEVICE_DESCRIPTION in constants.h to what you\r
-; set DeviceDescription to.\r
-;\r
-;*********************************************************\r
-\r
-[Version]\r
- Signature = "$Windows NT$"\r
- CatalogFile = tap0901.cat\r
- ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}\r
- Provider = %Provider%\r
- Class = Net\r
-\r
-; This version number should match the version\r
-; number given in SOURCES.\r
- DriverVer=07/02/2012,9.00.00.9\r
-\r
-[Strings]\r
- DeviceDescription = "TAP-Windows Adapter V9"\r
- Provider = "TAP-Windows Provider V9"\r
-\r
-;----------------------------------------------------------------\r
-; Manufacturer + Product Section (Done)\r
-;----------------------------------------------------------------\r
-[Manufacturer]\r
- %Provider% = tap0901\r
-\r
-[tap0901]\r
- %DeviceDescription% = tap0901.ndi, tap0901\r
-\r
-;---------------------------------------------------------------\r
-; Driver Section (Done)\r
-;---------------------------------------------------------------\r
-\r
-;----------------- Characteristics ------------\r
-; NCF_PHYSICAL = 0x04\r
-; NCF_VIRTUAL = 0x01\r
-; NCF_SOFTWARE_ENUMERATED = 0x02\r
-; NCF_HIDDEN = 0x08\r
-; NCF_NO_SERVICE = 0x10\r
-; NCF_HAS_UI = 0x80\r
-;----------------- Characteristics ------------\r
-\r
-[tap0901.ndi]\r
- CopyFiles = tap0901.driver, tap0901.files\r
- AddReg = tap0901.reg\r
- AddReg = tap0901.params.reg\r
- Characteristics = 0x81\r
-\r
-[tap0901.ndi.Services]\r
- AddService = tap0901, 2, tap0901.service\r
-\r
-[tap0901.reg]\r
- HKR, Ndi, Service, 0, "tap0901"\r
- HKR, Ndi\Interfaces, UpperRange, 0, "ndis5"\r
- HKR, Ndi\Interfaces, LowerRange, 0, "ethernet"\r
- HKR, , Manufacturer, 0, "%Provider%"\r
- HKR, , ProductName, 0, "%DeviceDescription%"\r
-\r
-[tap0901.params.reg]\r
- HKR, Ndi\params\MTU, ParamDesc, 0, "MTU"\r
- HKR, Ndi\params\MTU, Type, 0, "int"\r
- HKR, Ndi\params\MTU, Default, 0, "1500"\r
- HKR, Ndi\params\MTU, Optional, 0, "0"\r
- HKR, Ndi\params\MTU, Min, 0, "100"\r
- HKR, Ndi\params\MTU, Max, 0, "1500"\r
- HKR, Ndi\params\MTU, Step, 0, "1"\r
- HKR, Ndi\params\MediaStatus, ParamDesc, 0, "Media Status"\r
- HKR, Ndi\params\MediaStatus, Type, 0, "enum"\r
- HKR, Ndi\params\MediaStatus, Default, 0, "0"\r
- HKR, Ndi\params\MediaStatus, Optional, 0, "0"\r
- HKR, Ndi\params\MediaStatus\enum, "0", 0, "Application Controlled"\r
- HKR, Ndi\params\MediaStatus\enum, "1", 0, "Always Connected"\r
- HKR, Ndi\params\MAC, ParamDesc, 0, "MAC Address"\r
- HKR, Ndi\params\MAC, Type, 0, "edit"\r
- HKR, Ndi\params\MAC, Optional, 0, "1"\r
- HKR, Ndi\params\AllowNonAdmin, ParamDesc, 0, "Non-Admin Access"\r
- HKR, Ndi\params\AllowNonAdmin, Type, 0, "enum"\r
- HKR, Ndi\params\AllowNonAdmin, Default, 0, "1"\r
- HKR, Ndi\params\AllowNonAdmin, Optional, 0, "0"\r
- HKR, Ndi\params\AllowNonAdmin\enum, "0", 0, "Not Allowed"\r
- HKR, Ndi\params\AllowNonAdmin\enum, "1", 0, "Allowed"\r
-\r
-;----------------------------------------------------------------\r
-; Service Section\r
-;----------------------------------------------------------------\r
-\r
-;---------- Service Type -------------\r
-; SERVICE_KERNEL_DRIVER = 0x01\r
-; SERVICE_WIN32_OWN_PROCESS = 0x10\r
-;---------- Service Type -------------\r
-\r
-;---------- Start Mode ---------------\r
-; SERVICE_BOOT_START = 0x0\r
-; SERVICE_SYSTEM_START = 0x1\r
-; SERVICE_AUTO_START = 0x2\r
-; SERVICE_DEMAND_START = 0x3\r
-; SERVICE_DISABLED = 0x4\r
-;---------- Start Mode ---------------\r
-\r
-[tap0901.service]\r
- DisplayName = %DeviceDescription%\r
- ServiceType = 1\r
- StartType = 3\r
- ErrorControl = 1\r
- LoadOrderGroup = NDIS\r
- ServiceBinary = %12%\tap0901.sys\r
-\r
-;-----------------------------------------------------------------\r
-; File Installation\r
-;-----------------------------------------------------------------\r
-\r
-;----------------- Copy Flags ------------\r
-; COPYFLG_NOSKIP = 0x02\r
-; COPYFLG_NOVERSIONCHECK = 0x04\r
-;----------------- Copy Flags ------------\r
-\r
-; SourceDisksNames\r
-; diskid = description[, [tagfile] [, <unused>, subdir]]\r
-; 1 = "Intel Driver Disk 1",e100bex.sys,,\r
-\r
-[SourceDisksNames]\r
- 1 = %DeviceDescription%, tap0901.sys\r
-\r
-; SourceDisksFiles\r
-; filename_on_source = diskID[, [subdir][, size]]\r
-; e100bex.sys = 1,, ; on distribution disk 1\r
-\r
-[SourceDisksFiles]\r
-tap0901.sys = 1\r
-\r
-[DestinationDirs]\r
- tap0901.files = 11\r
- tap0901.driver = 12\r
-\r
-[tap0901.files]\r
-; TapPanel.cpl,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-; cipsrvr.exe,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-\r
-[tap0901.driver]\r
- tap0901.sys,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-\r
-;---------------------------------------------------------------\r
-; End\r
-;---------------------------------------------------------------\r
+++ /dev/null
-; ****************************************************************************\r
-; * Copyright (C) 2002-2010 OpenVPN Technologies, Inc. *\r
-; * This program is free software; you can redistribute it and/or modify *\r
-; * it under the terms of the GNU General Public License version 2 *\r
-; * as published by the Free Software Foundation. *\r
-; ****************************************************************************\r
-\r
-; SYNTAX CHECKER\r
-; cd \WINDDK\3790\tools\chkinf\r
-; chkinf c:\src\openvpn\tap-win32\i386\oemwin2k.inf\r
-; OUTPUT -> file:///c:/WINDDK/3790/tools/chkinf/htm/c%23+src+openvpn+tap-win32+i386+__OemWin2k.htm\r
-\r
-; INSTALL/REMOVE DRIVER\r
-; tapinstall install OemWin2k.inf TAP0901\r
-; tapinstall update OemWin2k.inf TAP0901\r
-; tapinstall remove TAP0901\r
-\r
-;*********************************************************\r
-; Note to Developers:\r
-;\r
-; If you are bundling the TAP-Windows driver with your app,\r
-; you should try to rename it in such a way that it will\r
-; not collide with other instances of TAP-Windows defined\r
-; by other apps. Multiple versions of the TAP-Windows\r
-; driver, each installed by different apps, can coexist\r
-; on the same machine if you follow these guidelines.\r
-; NOTE: these instructions assume you are editing the\r
-; generated OemWin2k.inf file, not the source\r
-; OemWin2k.inf.in file which is preprocessed by winconfig\r
-; and uses macro definitions from settings.in.\r
-;\r
-; (1) Rename all tapXXXX instances in this file to\r
-; something different (use at least 5 characters\r
-; for this name!)\r
-; (2) Change the "!define TAP" definition in openvpn.nsi\r
-; to match what you changed tapXXXX to.\r
-; (3) Change TARGETNAME in SOURCES to match what you\r
-; changed tapXXXX to.\r
-; (4) Change TAP_COMPONENT_ID in common.h to match what\r
-; you changed tapXXXX to.\r
-; (5) Change SZDEPENDENCIES in service.h to match what\r
-; you changed tapXXXX to.\r
-; (6) Change DeviceDescription and Provider strings.\r
-; (7) Change PRODUCT_TAP_WIN_DEVICE_DESCRIPTION in constants.h to what you\r
-; set DeviceDescription to.\r
-;\r
-;*********************************************************\r
-\r
-[Version]\r
- Signature = "$Windows NT$"\r
- CatalogFile = tap0901.cat\r
- ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}\r
- Provider = %Provider%\r
- Class = Net\r
-\r
-; This version number should match the version\r
-; number given in SOURCES.\r
- DriverVer=07/02/2012,9.00.00.9\r
-\r
-[Strings]\r
- DeviceDescription = "TAP-Windows Adapter V9"\r
- Provider = "TAP-Windows Provider V9"\r
-\r
-;----------------------------------------------------------------\r
-; Manufacturer + Product Section (Done)\r
-;----------------------------------------------------------------\r
-[Manufacturer]\r
- %Provider% = tap0901, NTamd64\r
-\r
-[tap0901.NTamd64]\r
- %DeviceDescription% = tap0901.ndi, tap0901\r
-\r
-;---------------------------------------------------------------\r
-; Driver Section (Done)\r
-;---------------------------------------------------------------\r
-\r
-;----------------- Characteristics ------------\r
-; NCF_PHYSICAL = 0x04\r
-; NCF_VIRTUAL = 0x01\r
-; NCF_SOFTWARE_ENUMERATED = 0x02\r
-; NCF_HIDDEN = 0x08\r
-; NCF_NO_SERVICE = 0x10\r
-; NCF_HAS_UI = 0x80\r
-;----------------- Characteristics ------------\r
-\r
-[tap0901.ndi]\r
- CopyFiles = tap0901.driver, tap0901.files\r
- AddReg = tap0901.reg\r
- AddReg = tap0901.params.reg\r
- Characteristics = 0x81\r
-\r
-[tap0901.ndi.Services]\r
- AddService = tap0901, 2, tap0901.service\r
-\r
-[tap0901.reg]\r
- HKR, Ndi, Service, 0, "tap0901"\r
- HKR, Ndi\Interfaces, UpperRange, 0, "ndis5"\r
- HKR, Ndi\Interfaces, LowerRange, 0, "ethernet"\r
- HKR, , Manufacturer, 0, "%Provider%"\r
- HKR, , ProductName, 0, "%DeviceDescription%"\r
-\r
-[tap0901.params.reg]\r
- HKR, Ndi\params\MTU, ParamDesc, 0, "MTU"\r
- HKR, Ndi\params\MTU, Type, 0, "int"\r
- HKR, Ndi\params\MTU, Default, 0, "1500"\r
- HKR, Ndi\params\MTU, Optional, 0, "0"\r
- HKR, Ndi\params\MTU, Min, 0, "100"\r
- HKR, Ndi\params\MTU, Max, 0, "1500"\r
- HKR, Ndi\params\MTU, Step, 0, "1"\r
- HKR, Ndi\params\MediaStatus, ParamDesc, 0, "Media Status"\r
- HKR, Ndi\params\MediaStatus, Type, 0, "enum"\r
- HKR, Ndi\params\MediaStatus, Default, 0, "0"\r
- HKR, Ndi\params\MediaStatus, Optional, 0, "0"\r
- HKR, Ndi\params\MediaStatus\enum, "0", 0, "Application Controlled"\r
- HKR, Ndi\params\MediaStatus\enum, "1", 0, "Always Connected"\r
- HKR, Ndi\params\MAC, ParamDesc, 0, "MAC Address"\r
- HKR, Ndi\params\MAC, Type, 0, "edit"\r
- HKR, Ndi\params\MAC, Optional, 0, "1"\r
- HKR, Ndi\params\AllowNonAdmin, ParamDesc, 0, "Non-Admin Access"\r
- HKR, Ndi\params\AllowNonAdmin, Type, 0, "enum"\r
- HKR, Ndi\params\AllowNonAdmin, Default, 0, "1"\r
- HKR, Ndi\params\AllowNonAdmin, Optional, 0, "0"\r
- HKR, Ndi\params\AllowNonAdmin\enum, "0", 0, "Not Allowed"\r
- HKR, Ndi\params\AllowNonAdmin\enum, "1", 0, "Allowed"\r
-\r
-;----------------------------------------------------------------\r
-; Service Section\r
-;----------------------------------------------------------------\r
-\r
-;---------- Service Type -------------\r
-; SERVICE_KERNEL_DRIVER = 0x01\r
-; SERVICE_WIN32_OWN_PROCESS = 0x10\r
-;---------- Service Type -------------\r
-\r
-;---------- Start Mode ---------------\r
-; SERVICE_BOOT_START = 0x0\r
-; SERVICE_SYSTEM_START = 0x1\r
-; SERVICE_AUTO_START = 0x2\r
-; SERVICE_DEMAND_START = 0x3\r
-; SERVICE_DISABLED = 0x4\r
-;---------- Start Mode ---------------\r
-\r
-[tap0901.service]\r
- DisplayName = %DeviceDescription%\r
- ServiceType = 1\r
- StartType = 3\r
- ErrorControl = 1\r
- LoadOrderGroup = NDIS\r
- ServiceBinary = %12%\tap0901.sys\r
-\r
-;-----------------------------------------------------------------\r
-; File Installation\r
-;-----------------------------------------------------------------\r
-\r
-;----------------- Copy Flags ------------\r
-; COPYFLG_NOSKIP = 0x02\r
-; COPYFLG_NOVERSIONCHECK = 0x04\r
-;----------------- Copy Flags ------------\r
-\r
-; SourceDisksNames\r
-; diskid = description[, [tagfile] [, <unused>, subdir]]\r
-; 1 = "Intel Driver Disk 1",e100bex.sys,,\r
-\r
-[SourceDisksNames]\r
- 1 = %DeviceDescription%, tap0901.sys\r
-\r
-; SourceDisksFiles\r
-; filename_on_source = diskID[, [subdir][, size]]\r
-; e100bex.sys = 1,, ; on distribution disk 1\r
-\r
-[SourceDisksFiles]\r
-tap0901.sys = 1\r
-\r
-[DestinationDirs]\r
- tap0901.files = 11\r
- tap0901.driver = 12\r
-\r
-[tap0901.files]\r
-; TapPanel.cpl,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-; cipsrvr.exe,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-\r
-[tap0901.driver]\r
- tap0901.sys,,,6 ; COPYFLG_NOSKIP | COPYFLG_NOVERSIONCHECK\r
-\r
-;---------------------------------------------------------------\r
-; End\r
-;---------------------------------------------------------------\r
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include -I$(top_builddir)/src/include
-tap32dir = $(pkgdatadir)/openvpn-tap32/tapw32/
-
-tap64dir = $(pkgdatadir)/openvpn-tap32/tapw64/
-
SUBDIRS = scripts hellos services
dist_pkgdata_DATA = \
branding/logo/gnunet-logo-color.png \
testing_hostkeys.ecc
-if MINGW
-tap32_DATA = \
- 3rdparty/Windows/openvpn-tap32/tapw32/tap0901.sys \
- 3rdparty/Windows/openvpn-tap32/tapw32/tap0901.cat \
- 3rdparty/Windows/openvpn-tap32/tapw32/OemWin2k.inf
-
-tap64_DATA = \
- 3rdparty/Windows/openvpn-tap32/tapw64/tap0901.sys \
- 3rdparty/Windows/openvpn-tap32/tapw64/tap0901.cat \
- 3rdparty/Windows/openvpn-tap32/tapw64/OemWin2k.inf
-endif
-
INITD_FILES = \
services/openrc/gnunet.initd \
services/systemd/gnunet.service
conf/wireshark/wireshark.lua \
packages/nix/default.nix \
packages/nix/gnunet-dev.nix \
- 3rdparty/Windows/openvpn-tap32/tapw32/tap0901.sys \
- 3rdparty/Windows/openvpn-tap32/tapw32/tap0901.cat \
- 3rdparty/Windows/openvpn-tap32/tapw32/OemWin2k.inf \
- 3rdparty/Windows/openvpn-tap32/tapw64/tap0901.sys \
- 3rdparty/Windows/openvpn-tap32/tapw64/tap0901.cat \
- 3rdparty/Windows/openvpn-tap32/tapw64/OemWin2k.inf \
- 3rdparty/Windows/openvpn-tap32/INSTALL \
- 3rdparty/Windows/openvpn-tap32/tap32-signed-i386-2.1.zip \
- 3rdparty/Windows/openvpn-tap32/tap32-source-2.1.zip \
$(INITD_FILES)
check_PROGRAMS = \
src/dns/gnunet-zonewalk.c
src/dns/plugin_block_dns.c
src/exit/gnunet-daemon-exit.c
-src/exit/gnunet-helper-exit-windows.c
src/exit/gnunet-helper-exit.c
src/fragmentation/defragmentation.c
src/fragmentation/fragmentation.c
src/gns/gnunet-bcd.c
src/gns/gnunet-dns2gns.c
src/gns/gnunet-gns-benchmark.c
-src/gns/gnunet-gns-helper-service-w32.c
src/gns/gnunet-gns-import.c
src/gns/gnunet-gns-proxy.c
src/gns/gnunet-gns.c
src/gns/plugin_block_gns.c
src/gns/plugin_gnsrecord_gns.c
src/gns/plugin_rest_gns.c
-src/gns/w32nsp-install.c
-src/gns/w32nsp-resolve.c
-src/gns/w32nsp-uninstall.c
-src/gns/w32nsp.c
src/gnsrecord/gnsrecord.c
src/gnsrecord/gnsrecord_crypto.c
src/gnsrecord/gnsrecord_misc.c
src/nat-auto/gnunet-service-nat-auto_legacy.c
src/nat-auto/nat_auto_api.c
src/nat-auto/nat_auto_api_test.c
-src/nat/gnunet-helper-nat-client-windows.c
src/nat/gnunet-helper-nat-client.c
-src/nat/gnunet-helper-nat-server-windows.c
src/nat/gnunet-helper-nat-server.c
src/nat/gnunet-nat.c
src/nat/gnunet-service-nat.c
src/util/gnunet-config-diff.c
src/util/gnunet-config.c
src/util/gnunet-ecc.c
-src/util/gnunet-helper-w32-console.c
src/util/gnunet-qr.c
src/util/gnunet-resolver.c
src/util/gnunet-scrypt.c
src/util/gnunet-service-resolver.c
-src/util/gnunet-timeout-w32.c
src/util/gnunet-timeout.c
src/util/gnunet-uri.c
src/util/helper.c
src/util/strings.c
src/util/time.c
src/util/tun.c
-src/util/w32cat.c
-src/util/win.c
-src/util/winproc.c
-src/vpn/gnunet-helper-vpn-windows.c
src/vpn/gnunet-helper-vpn.c
src/vpn/gnunet-service-vpn.c
src/vpn/gnunet-vpn.c
msgstr ""
"Project-Id-Version: gnunet 0.10.1\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2015-03-08 16:16+0100\n"
"Last-Translator: Mario Blättermann <mario.blaettermann@gmail.com>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
-"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.7.4\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, fuzzy, c-format
msgid "Failed to remove configuration file %s\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, fuzzy, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr ""
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
msgid "We disconnected from ARM before we could send a request"
msgstr ""
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
msgid "Unknown request status"
msgstr "Unbekannter Anfragestatus"
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "%s wurde gestoppt"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
#, fuzzy
msgid "is starting"
msgstr "%s startet"
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "%s wird gestoppt"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
#, fuzzy
msgid "is starting already"
msgstr "%s ist bereits gestartet"
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "%s wird bereits gestoppt"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
#, fuzzy
msgid "is started already"
msgstr "%s ist bereits gestartet"
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "%s ist bereits gestoppt"
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
msgid "service is not known to ARM"
msgstr ""
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "%s-Dienst konnte nicht gestartet werden"
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
msgid "service cannot be manipulated because ARM is shutting down"
msgstr ""
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "Unbekannter Anfragestatus"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr "Schwerwiegender Fehler bei der Initialisierung der ARM-API.\n"
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr "ARM-Dienst konnte nicht gestartet werden: %s\n"
msgid "Failed to stop the ARM service: %s\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "HTTP Anfrage konnte nicht an Host `%s' gesendet werden: %s\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, fuzzy, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, fuzzy, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr "HTTP Anfrage konnte nicht an Host `%s' gesendet werden: %s\n"
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, fuzzy, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, fuzzy, c-format
msgid "Failed to request a list of services: %s\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
msgid "Error communicating with ARM. ARM not running?\n"
msgstr "Fehler bei der Kommunikation mit ARM. Läuft ARM nicht?\n"
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
msgid "Running services:\n"
msgstr "Laufende Dienste:\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr "%s wurde gestoppt.\n"
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, c-format
msgid "Starting %s...\n"
msgstr "%s wird gestartet …\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr "%s wird gestoppt …\n"
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, fuzzy, c-format
msgid "Unknown status %u for service %s.\n"
msgstr "`%s': unbekannter Dienst: %s\n"
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
msgid "stop all GNUnet services"
msgstr "Alle GNUnet-Dienste stoppen"
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr "Einen bestimmten Dienst starten"
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr "Einen bestimmten Dienst stoppen"
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
msgid "start all GNUnet default services"
msgstr "Alle Standard-GNUnet-Dienste starten"
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
msgid "stop and start all GNUnet default services"
msgstr "Alle Standard-GNUnet-Dienste stoppen und starten"
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr "Konfigurationsdatei und Verzeichnis beim Beenden löschen"
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr "ARM-Aktivitäten überwachen"
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr "Keine Statusmeldungen ausgeben"
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
msgid "list currently running services"
msgstr "Alle derzeit laufenden Dienste auflisten"
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, c-format
msgid "Using `%s' instead\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "»%s« konnte nicht aufgelöst werden: %s\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, fuzzy, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-msgid "print logging"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, fuzzy, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, fuzzy, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, fuzzy, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "Konfiguration konnte nicht aus %s geladen werden\n"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2699
-#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
-msgstr ""
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
+msgstr "Protokollierung stoppen\n"
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr " gconfig\tGTK Konfiguration\n"
+msgid "Start logging `%s'\n"
+msgstr "Collection `%s' begonnen.\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, fuzzy, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr "Protokollierung stoppen\n"
-
-#: src/ats-tests/ats-testing-log.c:892
-#, fuzzy, c-format
-msgid "Start logging `%s'\n"
-msgstr "Collection `%s' begonnen.\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr ""
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
+msgid ""
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3306
+msgid "print logging"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
+msgstr ""
+
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, fuzzy, c-format
+msgid "Failed to initialize solver `%s'!\n"
+msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:304
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:359
+#, c-format
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1870
+#, fuzzy, c-format
+msgid "Adding address for peer `%s' multiple times\n"
+msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
+
+#: src/ats/plugin_ats_mlp.c:1914
+#, fuzzy, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
+msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
+
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "Konfiguration konnte nicht aus %s geladen werden\n"
+
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
+msgid ""
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr " gconfig\tGTK Konfiguration\n"
+
#: src/auction/gnunet-auction-create.c:163
msgid "description of the item to be sold"
msgstr ""
#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
msgid "help text"
msgstr "Hilfetext"
msgid "Extra arguments are not applicable in combination with this option.\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/cadet/gnunet-cadet.c:795
#, fuzzy, c-format
msgid "Invalid target `%s'\n"
msgstr "Ungültiger Parameter: `%s'\n"
-#: src/cadet/gnunet-cadet.c:829
+#: src/cadet/gnunet-cadet.c:832
#, fuzzy
msgid "No action requested\n"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/cadet/gnunet-cadet.c:854
+#: src/cadet/gnunet-cadet.c:857
#, fuzzy
msgid "Provide information about a particular connection"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/cadet/gnunet-cadet.c:858
+#: src/cadet/gnunet-cadet.c:861
msgid "Activate echo mode"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
+#: src/cadet/gnunet-cadet.c:866
msgid "Listen for connections using a shared secret among sender and recipient"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
+#: src/cadet/gnunet-cadet.c:871
#, fuzzy
msgid "Provide information about a patricular peer"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/cadet/gnunet-cadet.c:872
+#: src/cadet/gnunet-cadet.c:875
#, fuzzy
msgid "Provide information about all peers"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/cadet/gnunet-cadet.c:876
+#: src/cadet/gnunet-cadet.c:879
#, fuzzy
msgid "Provide information about all tunnels"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr "Fehler beim Lesen aus STDIN: %d %s\n"
msgid "Failed to allocate %u bytes for second packet\n"
msgstr "UDP-Sockets können nicht geöffnet werden\n"
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, fuzzy, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr "Verbindung zum %s-Dienst ist fehlgeschlagen!\n"
msgid "Could not start playback audio helper.\n"
msgstr ""
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr "# verbundener Freunde"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
#, fuzzy
msgid "key received"
msgstr "# empfangene Ergebnisse"
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
#, fuzzy
msgid "connection established"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "# verbundener Freunde"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "Unbekannter Fehler"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, fuzzy, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr "%24s: %-17s %4s (%u Verbindungen insgesamt)\n"
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Ungültiges Befehlszeilenargument »%s«\n"
msgid "Failed to connect to CORE service!\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
msgid "provide information about all current connections (continuously)"
msgstr ""
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
msgid "Print information about connected peers."
msgstr "Informationen über verbundene Knoten ausgeben."
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
#, fuzzy
msgid "# send requests dropped (disconnected)"
msgstr "# gap Anfragen verworfen: Kollision in RT"
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# Bytes Rauschen empfangen"
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
msgid "# messages discarded (session disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, fuzzy, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr "# Bytes Rauschen empfangen"
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "Dienst »%s« wird neu gestartet.\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr "# Bytes verschlüsselt"
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr "# Bytes entschlüsselt"
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
msgid "# PAYLOAD dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
#, fuzzy
msgid "# PING messages transmitted"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
#, fuzzy
msgid "# duplicate ephemeral keys ignored"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
#, fuzzy
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
#, fuzzy
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
#, fuzzy
msgid "# PING messages received"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
#, fuzzy
msgid "# PING messages dropped (out of order)"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
#, fuzzy
msgid "# PONG messages created"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
msgid "# sessions terminated by timeout"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
#, fuzzy
msgid "# keepalive messages sent"
msgstr "# Klartext PING Nachrichten gesendet"
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
#, fuzzy
msgid "# PONG messages received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
msgid "# PONG messages dropped (connection down)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
#, fuzzy
msgid "# PONG messages dropped (out of order)"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
#, fuzzy
msgid "# PONG messages decrypted"
msgstr "# PING Nachrichten erstellt"
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
#, fuzzy
msgid "# session keys confirmed via PONG"
msgstr "# Knotenankündigungen empfangen"
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
#, fuzzy
msgid "# timeouts prevented via PONG"
msgstr "# Bytes empfangen über TCP"
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
#, fuzzy
msgid "# rekey operations confirmed via PONG"
msgstr "# Knotenankündigungen empfangen"
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
msgid "# DATA message dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
msgid "# sessions terminated by key expiration"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
#, fuzzy
msgid "# bytes dropped (duplicates)"
msgstr "# Bytes verworfen von TCP (ausgehend)"
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
#, fuzzy
msgid "# bytes dropped (out of sequence)"
msgstr "# Bytes verworfen von TCP (ausgehend)"
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
#, fuzzy
msgid "# bytes dropped (ancient message)"
msgstr "# Bytes verworfen von TCP (ausgehend)"
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
#, fuzzy
msgid "# bytes of payload decrypted"
msgstr "# Bytes entschlüsselt"
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
msgid "# peers connected"
msgstr "# verbundener Knoten"
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
#, fuzzy
msgid "# type map refreshes sent"
msgstr "# p2p Trace-Antworten gesendet"
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
#, fuzzy
msgid "# outdated typemap confirmations received"
msgstr "# Bytes empfangen über TCP"
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
#, fuzzy
msgid "# valid typemap confirmations received"
msgstr "# Bytes empfangen über TCP"
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
#, fuzzy
msgid "# type maps received"
msgstr "# Bytes empfangen über TCP"
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, fuzzy, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr "`%s': unbekannter Dienst: %s\n"
msgid "GNUnet credential resolver tool"
msgstr "GNUnet Netzwerk Topologie tracen."
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, fuzzy, c-format
msgid "Failed to connect to GNS\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, fuzzy, c-format
msgid "Failed to connect to namestore\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/credential/plugin_rest_credential.c:1128
-#, fuzzy
-msgid "GNS REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
msgid "# bytes stored"
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr "`%s' an `%s' schlug fehl bei %s:%d mit dem Fehler: %s\n"
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr "MySQL-Datenbank läuft\n"
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
#, fuzzy
msgid "Failed to drop table from database.\n"
msgstr "Fehler beim Binden an UDP Port %d.\n"
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr "PostgreSQL-Datenbank läuft\n"
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr "SQLite-Datenbank konnte nicht initialisiert werden: %s.\n"
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
msgid "Sqlite database running\n"
msgstr "Sqlite-Datenbank läuft\n"
msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-#, fuzzy
-msgid "number of peers to start"
-msgstr "Anzahl an Durchläufen"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:1009
-msgid "Measure quality and performance of the DHT service."
-msgstr ""
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr "# PING Nachrichten erstellt"
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
#, fuzzy
msgid "# requests TTL-dropped"
msgstr "# dht Anfragen weitergeleitet"
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
#, fuzzy
msgid "# Peer selection failed"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
#, fuzzy
msgid "# PUT requests routed"
msgstr "# dht Anfragen weitergeleitet"
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
msgid "# PUT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
msgid "# P2P messages dropped due to full queue"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
#, fuzzy
msgid "# GET requests routed"
msgstr "# dht Anfragen weitergeleitet"
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
msgid "# GET messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
msgid "# RESULT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
#, fuzzy
msgid "# Expired PUTs discarded"
msgstr "# verworfener Nachrichten"
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
#, fuzzy
msgid "# P2P PUT requests received"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
#, fuzzy
msgid "# P2P PUT bytes received"
msgstr "# Bytes empfangen über TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
#, fuzzy
msgid "# P2P GET requests received"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
#, fuzzy
msgid "# P2P GET bytes received"
msgstr "# Bytes empfangen über TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
msgid "# P2P FIND PEER requests processed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
#, fuzzy
msgid "# P2P GET requests ONLY routed"
msgstr "# dht Anfragen weitergeleitet"
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
#, fuzzy
msgid "# Expired results discarded"
msgstr "# verworfener Nachrichten"
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
msgid "# P2P RESULTS received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
#, fuzzy
msgid "# P2P RESULT bytes received"
msgstr "# Bytes empfangen über TCP"
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
#, fuzzy
msgid "# DHT requests combined"
msgstr "# dht Anfragen weitergeleitet"
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+#, fuzzy
+msgid "number of peers to start"
+msgstr "Anzahl an Durchläufen"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+msgid "Measure quality and performance of the DHT service."
+msgstr ""
+
#: src/dht/plugin_block_dht.c:189
#, fuzzy, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
msgid "need a valid IPv4 or IPv6 address\n"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
msgstr ""
+#: src/dv/gnunet-dv.c:175
+#, fuzzy
+msgid "Print information about DV state"
+msgstr "Informationen über andere GNUnet Knoten ausgeben."
+
#: src/exit/gnunet-daemon-exit.c:960
#, fuzzy
msgid "# TCP packets sent via TUN"
msgid "# ICMP packets sent via TUN"
msgstr "# Bytes gesendet über TCP"
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
#, fuzzy
msgid "# UDP packets sent via TUN"
msgstr "# Bytes gesendet über TCP"
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
#, fuzzy
msgid "# Bytes received from CADET"
msgstr "# Bytes empfangen über TCP"
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
#, fuzzy
msgid "# UDP IP-exit requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
#, fuzzy
msgid "# UDP service requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
#, fuzzy
msgid "# TCP service creation requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
#, fuzzy
msgid "# TCP IP-exit creation requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
#, fuzzy
msgid "# TCP DATA requests dropped (no session)"
msgstr "# gap Anfragen verworfen: Kollision in RT"
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
#, fuzzy
msgid "# TCP data requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
#, fuzzy
msgid "# ICMP IP-exit requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
#, fuzzy
msgid "# ICMP service requests received via cadet"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr "# PING Nachrichten erstellt"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr "# Bytes des Typs %d übertragen"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
#, fuzzy
msgid "# Packets received from TUN"
msgstr "# Bytes empfangen über TCP"
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
#, fuzzy
msgid "# Bytes received from TUN"
msgstr "# Bytes empfangen über TCP"
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr "IPv4-Paketoptionen empfangen, werden ignoriert.\n"
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr "Option »%s« für Domain »%s« ist nicht korrekt formatiert!\n"
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr "Muss eine Zahl sein"
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
"\n"
"Fehler beim Uploaden der Datei: %s\n"
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Konfigurationsdatei `%s' konnte nicht geöffnet werden.\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, fuzzy, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr "Indizieren der Datei `%s' schlug fehl. Versuch Datei einzufügen...\n"
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr "Anfrage an den Transportdienst konnte nicht gestellt werden\n"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr ""
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr "Dateiname zu lang"
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
#, fuzzy
msgid "could not connect to `fs' service"
msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n"
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, fuzzy, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, fuzzy, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, fuzzy, c-format
msgid "Recursive upload failed: %s"
msgstr ""
"\n"
"Fehler beim Uploaden der Datei: %s\n"
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
#, fuzzy
msgid "needs to be an actual file"
msgstr "`%s' ist keine normale Datei.\n"
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr "Verbindung fehlgeschlagen: %s\n"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden."
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, fuzzy, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr "Ungültige URL `%s' (muss mit `%s' beginnen)\n"
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
#, fuzzy
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr "Ungültige URL `%s' (muss mit `%s' beginnen)\n"
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
#, fuzzy
msgid "Malformed KSK URI (`++' not allowed)"
msgstr "Ungültige URL `%s' (muss mit `%s' beginnen)\n"
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
#, fuzzy
msgid "Malformed KSK URI (quotes not balanced)"
msgstr "Ungültige URL `%s' (muss mit `%s' beginnen)\n"
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "Ungültiges Argument »%s«\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr ""
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr "Keine Schlüsselwörter angegeben!\n"
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, fuzzy, c-format
msgid "Failed to load state: %s\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, fuzzy, c-format
msgid "Failed to save state to file %s\n"
msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, c-format
msgid "Publishing `%s'\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, fuzzy, c-format
msgid "Failed to run `%s'\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, fuzzy, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr "Sie dürfen nur eine Datei zum Deindizieren angeben.\n"
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr "Gewünschten Grad LEVEL an Sender-Anonymität festlegen"
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr "Die Priorität des Inhalts angeben"
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr ""
msgstr "Dateien aus dem GNUnet herunterladen."
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, fuzzy, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr "Den Grad LEVEL der gewünschten Empfänger-Anonymität setzen"
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr ""
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-#, fuzzy
-msgid "Special file-sharing operations"
-msgstr "Alle Optionen anzeigen"
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+#, fuzzy
+msgid "Special file-sharing operations"
+msgstr "Alle Optionen anzeigen"
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "=\tFehler beim Lesen des Verzeichnisses.\n"
#: src/fs/gnunet-publish.c:715
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "Die Option »%s« ergibt keinen Sinn ohne die Option »%s«.\n"
-#: src/fs/gnunet-publish.c:911
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, fuzzy, c-format
msgid "Error searching: %s.\n"
msgstr "Fehler beim Verlassen der DHT.\n"
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
msgid "Could not create keyword URI from arguments.\n"
msgstr ""
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
#, fuzzy
msgid "Could not start searching.\n"
msgstr "Fehler beim Starten der Collection.\n"
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr ""
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "GNUnet Konfiguration"
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
#, fuzzy
msgid "# replies received via cadet"
msgstr "# Bytes empfangen über TCP"
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
#, fuzzy
msgid "# replies received via cadet dropped"
msgstr "# Bytes empfangen über TCP"
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
#, fuzzy
msgid "# Pending requests created"
msgstr "# dht Anfragen weitergeleitet"
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
#, fuzzy
msgid "# Pending requests active"
msgstr "# Client Trace-Anfragen empfangen"
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
#, fuzzy
msgid "# replies received and matched"
msgstr "# Bytes empfangen über TCP"
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
#, fuzzy
msgid "# irrelevant replies discarded"
msgstr "# verworfener Nachrichten"
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
#, fuzzy
msgid "# storage requests dropped due to high load"
msgstr "# Knotenankündigungen empfangen"
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
#, fuzzy
msgid "# Replies received from DHT"
msgstr "# Bytes empfangen über HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
#, fuzzy
msgid "# Replies received from CADET"
msgstr "# Bytes empfangen über HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
#, fuzzy
msgid "# GAP PUT messages received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, fuzzy, c-format
msgid "Received malformed DNS request from %s\n"
msgstr "Beschädigte Antwort auf `%s' von Knoten `%s' empfangen.\n"
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, fuzzy, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr "Unbekannte Anfrageart %d empfangen bei %s:%d\n"
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
#, fuzzy
msgid "No DNS server specified!\n"
msgstr "Keine Schlüsselwörter angegeben!\n"
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "»%s« ist keine gültige IP-Adresse.\n"
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-#, fuzzy
-msgid "Specify the type of the record to lookup"
-msgstr "Die Priorität des Inhalts angeben"
-
-#: src/gns/gnunet-gns.c:272
-#, fuzzy
-msgid "Specify a timeout for the lookup"
-msgstr "Die Priorität des Inhalts angeben"
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-#, fuzzy
-msgid "GNUnet GNS resolver tool"
-msgstr "GNUnet Netzwerk Topologie tracen."
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr "»%s« schlug fehl bei %s:%d mit dem Fehler: »%s«.\n"
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, fuzzy, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, fuzzy, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, fuzzy, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, fuzzy, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, fuzzy, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, fuzzy, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, fuzzy, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "SQLite Datenbank konnte nicht initialisiert werden: %s.\n"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, fuzzy, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
#, fuzzy
msgid "Failed to pass client to MHD\n"
msgstr "Fehler beim Starten der Collection.\n"
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, c-format
msgid "Unsupported socks version %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, fuzzy, c-format
msgid "Unsupported socks command %d\n"
msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, c-format
msgid "Unsupported socks address type %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, fuzzy, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+#, fuzzy
+msgid "Specify the type of the record to lookup"
+msgstr "Die Priorität des Inhalts angeben"
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+#, fuzzy
+msgid "GNUnet GNS resolver tool"
+msgstr "GNUnet Netzwerk Topologie tracen."
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
#, fuzzy
msgid "Could not connect to DHT!\n"
msgstr "Verbindung zu gnunetd konnte nicht hergestellt werden.\n"
msgid "Unable to parse BOX record string `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/gns/plugin_rest_gns.c:442
-#, fuzzy
-msgid "Gns REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, fuzzy, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, fuzzy, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, fuzzy, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, fuzzy, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, fuzzy, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, fuzzy, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr ""
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr ""
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
#, fuzzy
msgid "Failed to parse HELLO message: malformed\n"
msgstr "Fehler beim Senden der `%s' Nachricht an gnunetd\n"
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr ""
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, fuzzy, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr "Kommando `%s' wurde nicht gefunden!\n"
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, fuzzy, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
#, fuzzy
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr "# Hellos per HTTP heruntergeladen"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, fuzzy, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr "Ungültige `%s' Nachricht von Knoten `%s' empfangen.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
#, fuzzy
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr "# Hellos per HTTP heruntergeladen"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, fuzzy, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, fuzzy, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
#, fuzzy
msgid "# active connections"
msgstr "GNUnet Konfiguration"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, fuzzy, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, fuzzy, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr "Fehler beim Löschen des Pseudonyms `%s' (existiert nicht?).\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, fuzzy, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr ""
"`%s' konnte nicht aufgelöst werden, um unsere IP-Adresse zu ermitteln: %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, fuzzy, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr ""
"Datei `%s' konnte nicht zu `%s' umbenannt werden: Datei existiert bereits\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, fuzzy, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
#, fuzzy
msgid "bytes in hostlist"
msgstr "# bytes in der Datenbank"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, fuzzy, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr ""
msgid "hostlist requests refused (not ready)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
#, fuzzy
msgid "hostlist requests processed"
msgstr "# dht Anfragen weitergeleitet"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
#, fuzzy
msgid "# hostlist advertisements send"
msgstr "# Bekanntmachungen von anderen übertragen"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
#, fuzzy
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Auf die Namespace Informationen konnte nicht zugegriffen werden.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, fuzzy, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr "Ungültige Parameter. Abbruch.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, fuzzy, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "»%s« ist keine gültige IP-Adresse.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "»%s« ist keine gültige IP-Adresse.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, fuzzy, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, fuzzy, c-format
msgid "Failed to create ego: %s\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, fuzzy, c-format
msgid "Failed to set default ego: %s\n"
msgstr "Fehler beim Parsen der Gerätedaten von `%s' bei %s:%d.\n"
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-#, fuzzy
-msgid "reduce output"
-msgstr "Ausführliche Ausgabe"
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-msgid "display private keys as well"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, fuzzy, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, fuzzy, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr "Fehler beim Parsen der Gerätedaten von `%s' bei %s:%d.\n"
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, fuzzy, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, fuzzy, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/identity/plugin_rest_identity.c:1311
-msgid "Identity REST API initialized\n"
-msgstr ""
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Datei wurde als `%s' gespeichert.\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, fuzzy, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr "»%s« schlug bei %s:%d mit dem Fehler %s fehl\n"
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr "Versuchen, Datei »%s« für MySQL-Konfiguration zu verwenden.\n"
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, fuzzy, c-format
msgid "Could not access file `%s': %s\n"
msgstr "`%s' konnte nicht aufgelöst werden: %s\n"
msgid "No records found for `%s'"
msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n"
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr "Sie müssen einen Empfänger angeben!\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
#: src/namecache/gnunet-namecache.c:238
#, fuzzy
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr "Die Priorität des Inhalts angeben"
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
#, fuzzy
msgid "GNUnet zone manipulation tool"
msgstr "GNUnet Konfiguration"
#: src/namecache/plugin_namecache_flat.c:121
#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
#: src/peerstore/plugin_peerstore_flat.c:379
#: src/peerstore/plugin_peerstore_flat.c:538
#, fuzzy, c-format
msgstr "SQLite-Datenbank konnte nicht initialisiert werden: %s.\n"
#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
+#: src/namestore/plugin_namestore_heap.c:159
#: src/peerstore/plugin_peerstore_flat.c:394
#, fuzzy, c-format
msgid "Unable to get filesize: %s.\n"
msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
#: src/peerstore/plugin_peerstore_flat.c:406
#, fuzzy, c-format
msgid "Unable to read file: %s.\n"
msgid "Failed to setup database at `%s'\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, fuzzy, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, fuzzy, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, fuzzy, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, fuzzy, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
+#, fuzzy
+msgid "Failed to start HTTP server\n"
+msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
+#, fuzzy
+msgid "Failed to connect to identity\n"
+msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr ""
+
+#: src/namestore/gnunet-namestore.c:341
#, c-format
msgid "Adding record failed: %s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, c-format
msgid "Deleting record failed%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Dateiformat fehlerhaft (kein GNUnet Verzeichnis?)\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, fuzzy, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr "Unbekannte Operation `%s'\n"
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, fuzzy, c-format
msgid "Unsupported type `%s'\n"
msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, fuzzy, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr "%s: Symbolwert `%s' ist ungültig für %s\n"
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, fuzzy, c-format
msgid "Invalid time format `%s'\n"
msgstr "Ungültiger Parameter: `%s'\n"
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, fuzzy, c-format
msgid "Invalid URI `%s'\n"
msgstr "Ungültiger Parameter: `%s'\n"
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, fuzzy, c-format
msgid "Invalid nick `%s'\n"
msgstr "Ungültiger Parameter: `%s'\n"
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, c-format
msgid "No default ego configured in identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, fuzzy, c-format
msgid "Cannot connect to identity service\n"
msgstr "Verbindung zu %u.%u.%u.%u:%u fehlgeschlagen: %s\n"
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, fuzzy, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Unbekannter Befehl »%s«\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "Ungültiges Format für IP: »%s«\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
msgid "set the desired nick name for the zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
msgid "monitor changes in the namestore"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
msgid "determine our name for the given PKEY"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
msgid "name of the ego controlling the zone"
msgstr ""
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, fuzzy, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr "Kommando `%s' wird nicht unterstützt. Vorgang wird abgebrochen.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, fuzzy, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, fuzzy, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, fuzzy, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-#, fuzzy
-msgid "Failed to start HTTP server\n"
-msgstr "Fehler beim Senden einer `%s' Anfrage an den SMTP Server.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-#, fuzzy
-msgid "Failed to connect to identity\n"
-msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
+#: src/namestore/plugin_namestore_heap.c:778
#, fuzzy
-msgid "Flat file database running\n"
+msgid "heap file database running\n"
msgstr "Sqlite-Datenbank läuft\n"
-#: src/namestore/plugin_rest_namestore.c:919
-#, fuzzy
-msgid "Namestore REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
-
#: src/nat-auto/gnunet-nat-auto.c:193
#, fuzzy
msgid "Suggested configuration changes:\n"
msgstr ""
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
#, fuzzy
msgid "Failed to connect to `gnunet-nat-server'\n"
msgid "Detected external IP `%s'\n"
msgstr "Ungültiger RPC `%s' empfangen.\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, c-format
msgid "Detected internal network address `%s'.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
#, fuzzy
msgid "upnpc not found\n"
msgstr "Kommando `%s' wurde nicht gefunden!\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
#, fuzzy
msgid "Connection reversal request failed\n"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Fehler beim Starten der Collection.\n"
msgid "`upnpc' command not found\n"
msgstr "Kommando `%s' wurde nicht gefunden!\n"
-#: src/nse/gnunet-nse.c:123
-msgid "Show network size estimates from NSE service."
-msgstr ""
-
#: src/nse/gnunet-nse-profiler.c:849
msgid "limit to the number of connections to NSE services, 0 for none"
msgstr ""
msgid "Measure quality and performance of the NSE service."
msgstr ""
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
-msgid "Value is too large.\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, fuzzy, c-format
-msgid "Removing expired address of transport `%s'\n"
-msgstr "Verfügbare(r) Transport(e): %s\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:313
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
-msgstr "Datei wurde als `%s' gespeichert.\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr "Datei wurde als `%s' gespeichert.\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:492
-#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
-msgstr ""
-"Die Datei »%s« im Verzeichnis »%s« entspricht nicht der Namenskonvention. "
-"Die Datei wurde entfernt.\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:658
-#, fuzzy, c-format
-msgid "Scanning directory `%s'\n"
-msgstr "==> Verzeichnis `%s':\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:666
-#, fuzzy, c-format
-msgid "Still no peers found in `%s'!\n"
-msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
-#, fuzzy, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr "==> Verzeichnis `%s':\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
+#: src/nse/gnunet-nse.c:122
+msgid "Show network size estimates from NSE service."
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
+msgid "Value is too large.\n"
msgstr ""
-#: src/peerinfo/peerinfo_api.c:220
-#, fuzzy
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr "Fehler beim Empfangen der Antwort von gnunetd auf die `%s' Nachricht\n"
-
#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, fuzzy, c-format
msgid "%sPeer `%s'\n"
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, fuzzy, c-format
msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
msgid "dump hello to file"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:873
-msgid "also output HELLO uri(s)"
+#: src/peerinfo-tool/gnunet-peerinfo.c:873
+msgid "also output HELLO uri(s)"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:879
+msgid "add given HELLO uri to the database"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:897
+#, fuzzy
+msgid "Print information about peers."
+msgstr "Informationen über andere GNUnet Knoten ausgeben."
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
+#: src/transport/gnunet-service-transport_plugins.c:168
+#, fuzzy, c-format
+msgid "Starting transport plugins `%s'\n"
+msgstr "Teste Transport(e) %s\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
+#: src/transport/gnunet-service-transport_plugins.c:173
+#, fuzzy, c-format
+msgid "Loading `%s' transport plugin\n"
+msgstr "Teste Transport(e) %s\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
+#: src/transport/gnunet-service-transport_plugins.c:208
+#, fuzzy, c-format
+msgid "Failed to load transport plugin for `%s'\n"
+msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, fuzzy, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr "Verfügbare(r) Transport(e): %s\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr "Datei wurde als `%s' gespeichert.\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr "Datei wurde als `%s' gespeichert.\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:879
-msgid "add given HELLO uri to the database"
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
msgstr ""
+"Die Datei »%s« im Verzeichnis »%s« entspricht nicht der Namenskonvention. "
+"Die Datei wurde entfernt.\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:897
-#, fuzzy
-msgid "Print information about peers."
-msgstr "Informationen über andere GNUnet Knoten ausgeben."
-
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
-#: src/transport/gnunet-service-transport_plugins.c:168
+#: src/peerinfo/gnunet-service-peerinfo.c:659
#, fuzzy, c-format
-msgid "Starting transport plugins `%s'\n"
-msgstr "Teste Transport(e) %s\n"
+msgid "Scanning directory `%s'\n"
+msgstr "==> Verzeichnis `%s':\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
-#: src/transport/gnunet-service-transport_plugins.c:173
+#: src/peerinfo/gnunet-service-peerinfo.c:667
#, fuzzy, c-format
-msgid "Loading `%s' transport plugin\n"
-msgstr "Teste Transport(e) %s\n"
+msgid "Still no peers found in `%s'!\n"
+msgstr "Dienst `%s' konnte nicht ordentlich entladen werden!\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
-#: src/transport/gnunet-service-transport_plugins.c:208
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
#, fuzzy, c-format
-msgid "Failed to load transport plugin for `%s'\n"
-msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
+msgid "Cleaning up directory `%s'\n"
+msgstr "==> Verzeichnis `%s':\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
+
+#: src/peerinfo/peerinfo_api.c:220
#, fuzzy
-msgid "Peerinfo REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
+msgid "Failed to receive response from `PEERINFO' service."
+msgstr "Fehler beim Empfangen der Antwort von gnunetd auf die `%s' Nachricht\n"
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "`%s' konnte nicht aufgelöst werden: %s\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
msgid "Unexpected iteration response, this should not happen.\n"
msgstr ""
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
#, fuzzy
msgid "Received a malformed response from service."
msgstr "Beschädigte Antwort auf `%s' von Knoten `%s' empfangen.\n"
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr "`%s' an `%s' schlug fehl bei %s:%d mit dem Fehler: %s\n"
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Fehler beim Speichern der Konfiguration!"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "Ungültiges Argument »%s«\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "SQLite-Datenbank konnte nicht initialisiert werden: %s.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, fuzzy, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+#, fuzzy
+msgid "SQLite database running\n"
+msgstr "SQL Datenbank beschädigt, Ergebnis wird ignoriert.\n"
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr ""
msgid "# DNS replies dropped (too late?)"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr ""
"Es konnte keine Verbindung mit dem %s-Dienst hergestellt werden. Abbruch\n"
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, fuzzy, c-format
msgid "Ego is required\n"
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, fuzzy, c-format
msgid "Requesting party key is required!\n"
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-msgid "The EGO to use"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-#, fuzzy
-msgid "OpenID Connect REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-#, fuzzy
-msgid "Identity Provider REST API initialized\n"
-msgstr " Verbindung fehlgeschlagen\n"
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
msgid "Search string `%s' is too long!\n"
msgstr "Dienst »%s« läuft nicht\n"
-#: src/rest/gnunet-rest-server.c:1039
+#: src/rest-plugins/plugin_rest_copying.c:209
#, fuzzy
-msgid "GNUnet REST server"
-msgstr "GNUnet Netzwerk Topologie tracen."
+msgid "COPYING REST API initialized\n"
+msgstr " Verbindung fehlgeschlagen\n"
-#: src/rest/plugin_rest_config.c:265
+#: src/rest-plugins/plugin_rest_credential.c:1128
#, fuzzy
-msgid "CONFIG REST API initialized\n"
+msgid "GNS REST API initialized\n"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/rest/plugin_rest_copying.c:209
+#: src/rest-plugins/plugin_rest_gns.c:452
#, fuzzy
-msgid "COPYING REST API initialized\n"
+msgid "Gns REST API initialized\n"
+msgstr " Verbindung fehlgeschlagen\n"
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+msgid "Identity REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+#, fuzzy
+msgid "Namestore REST API initialized\n"
+msgstr " Verbindung fehlgeschlagen\n"
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+#, fuzzy
+msgid "Identity Provider REST API initialized\n"
+msgstr " Verbindung fehlgeschlagen\n"
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+#, fuzzy
+msgid "Peerinfo REST API initialized\n"
msgstr " Verbindung fehlgeschlagen\n"
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:944
+#, fuzzy
+msgid "GNUnet REST server"
+msgstr "GNUnet Netzwerk Topologie tracen."
+
#: src/revocation/gnunet-revocation.c:129
#, c-format
msgid "Key `%s' is valid\n"
msgid "Ego `%s' not found.\n"
msgstr "Kommando `%s' wurde nicht gefunden!\n"
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, c-format
msgid "Public key `%s' malformed\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
msgid "No filename to store revocation certificate given.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, fuzzy, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
#, fuzzy
msgid "No action specified. Nothing to do.\n"
msgstr "Keine Kommandos angegeben.\n"
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
#, fuzzy
msgid "Could not open revocation database file!"
msgstr "Knoten `%s' konnte nicht in der Routing Tabelle gefunden werden!\n"
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
msgid "timeout for the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "Anzahl an Durchläufen"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
msgid "Measure quality and performance of the RPS service."
msgstr ""
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
#, fuzzy
msgid "You must specify at least one message ID to check!\n"
msgid "Calculate the Vectorproduct with a GNUnet peer."
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
#, fuzzy
msgid "Connect to CADET failed\n"
msgstr " Verbindung fehlgeschlagen\n"
msgid "also profile decryption"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
+#: src/set/gnunet-service-set.c:2005
#, fuzzy
msgid "Could not connect to CADET service\n"
msgstr "Verbindung zum %s-Dienst ist fehlgeschlagen!\n"
-#: src/set/gnunet-set-ibf-profiler.c:267
+#: src/set/gnunet-set-ibf-profiler.c:252
#, fuzzy
msgid "number of element in set A-B"
msgstr "Anzahl an Durchläufen"
-#: src/set/gnunet-set-ibf-profiler.c:273
+#: src/set/gnunet-set-ibf-profiler.c:258
#, fuzzy
msgid "number of element in set B-A"
msgstr "Anzahl an Durchläufen"
-#: src/set/gnunet-set-ibf-profiler.c:280
+#: src/set/gnunet-set-ibf-profiler.c:264
msgid "number of common elements in A and B"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
+#: src/set/gnunet-set-ibf-profiler.c:270
msgid "hash num"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:292
+#: src/set/gnunet-set-ibf-profiler.c:276
msgid "ibf size"
msgstr ""
msgid "element size"
msgstr ""
+#: src/social/gnunet-social.c:1166
+#, fuzzy
+msgid "--place missing or invalid.\n"
+msgstr "Ungültige Antwort auf `%s'.\n"
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
+msgstr ""
+
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
+msgstr ""
+
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
+msgstr ""
+
+#: src/social/gnunet-social.c:1304
+#, fuzzy
+msgid "name or public key of ego"
+msgstr "Ungültiger Parameter: `%s'\n"
+
+#: src/social/gnunet-social.c:1309
+msgid "wait for incoming messages"
+msgstr ""
+
+#: src/social/gnunet-social.c:1315
+msgid "GNS name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
+msgstr ""
+
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
+msgstr ""
+
+#: src/social/gnunet-social.c:1333
+msgid "method name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "Anzahl an Durchläufen"
+
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
+msgstr ""
+
#: src/sq/sq.c:54
#, c-format
msgid "Failure to bind %u-th SQL parameter\n"
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr "Dateien aus dem GNUnet herunterladen."
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
#, fuzzy
msgid "Failed to obtain statistics.\n"
msgstr "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, fuzzy, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, fuzzy, c-format
msgid "Failed to initialize watch routine\n"
msgstr "`%s' Dienst konnte nicht initialisiert werden.\n"
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, c-format
msgid "Invalid argument `%s'\n"
msgstr "Ungültiges Argument »%s«\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr "Statistiken der GNUnet-Aktivitäten ausgeben."
msgstr "Ungültiger Parameter für `%s' bei %s:%d.\n"
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr ""
-#: src/testbed/gnunet_testbed_mpi_spawn.c:118
-#, fuzzy
-msgid "Waiting for child to exit.\n"
-msgstr ""
-"Warte darauf, dass sich andere Knoten verbinden (%u Iterationen "
-"verbleiben)...\n"
-
-#: src/testbed/gnunet_testbed_mpi_spawn.c:241
-#, fuzzy, c-format
-msgid "Spawning process `%s'\n"
-msgstr "Ungültige Antwort auf `%s'.\n"
-
-#: src/testbed/gnunet-testbed-profiler.c:287
+#: src/testbed/gnunet-testbed-profiler.c:289
msgid "tolerate COUNT number of continious timeout failures"
msgstr ""
-#: src/testbed/gnunet-testbed-profiler.c:291
+#: src/testbed/gnunet-testbed-profiler.c:294
msgid ""
"run profiler in non-interactive mode where upon testbed setup the profiler "
"does not wait for a keystroke but continues to run until a termination "
"signal is received"
msgstr ""
-#: src/testbed/testbed_api.c:400
+#: src/testbed/gnunet_testbed_mpi_spawn.c:118
+#, fuzzy
+msgid "Waiting for child to exit.\n"
+msgstr ""
+"Warte darauf, dass sich andere Knoten verbinden (%u Iterationen "
+"verbleiben)...\n"
+
+#: src/testbed/gnunet_testbed_mpi_spawn.c:241
+#, fuzzy, c-format
+msgid "Spawning process `%s'\n"
+msgstr "Ungültige Antwort auf `%s'.\n"
+
+#: src/testbed/testbed_api.c:410
#, fuzzy, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr "`%s' an `%s' schlug fehl bei %s:%d mit dem Fehler: %s\n"
msgid "Hosts file %s cannot be read\n"
msgstr ""
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr ""
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, fuzzy, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr "SQLite Datenbank konnte nicht initialisiert werden.\n"
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr ""
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr ""
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, fuzzy, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr "Konfigurationsdatei `%s' konnte nicht geöffnet werden.\n"
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, fuzzy, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr "Datei wurde als `%s' gespeichert.\n"
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, fuzzy, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, c-format
msgid "Failed to start `%s': %s\n"
msgstr "»%s« konnte nicht gestartet werden: %s\n"
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, c-format
msgid "Failed to load configuration from %s\n"
msgstr "Konfiguration konnte nicht aus %s geladen werden\n"
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
#, fuzzy
msgid "# connect requests issued to ATS"
msgstr "# geschlossener Verbindungen (HANGUP gesendet)"
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
#, fuzzy
msgid "# HELLO messages gossipped"
msgstr "# ausgehender Nachrichten verworfen"
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
msgid "# friends connected"
msgstr "# verbundener Freunde"
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, fuzzy, c-format
msgid "Found friend `%s' in configuration\n"
msgstr " gconfig\tGTK Konfiguration\n"
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
msgid "# friends in configuration"
msgstr "# Freunde in Konfiguration"
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
msgid "# HELLO messages received"
msgstr "# HELLO-Meldungen empfangen"
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
#, fuzzy
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr "Maximale Anzahl der Verbindungen ist %u\n"
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, c-format
msgid "Cannot create path to `%s'\n"
msgstr "Pfad zu »%s« kann nicht erstellt werden\n"
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr ""
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
msgid "# bytes payload discarded due to not connected peer"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
msgid "# bytes total received"
msgstr "# Bytes insgesamt empfangen"
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
msgid "# bytes payload received"
msgstr "# Bytes Nutzdaten empfangen"
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, fuzzy, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
msgid "# DISCONNECT messages sent"
msgstr "# DISCONNECT-Meldungen empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
#, fuzzy
msgid "# bytes in message queue for other peers"
msgstr "# Bytes ausgehender Nachrichten verworfen"
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
#, fuzzy
msgid "# messages transmitted to other peers"
msgstr "# Bytes des Typs %d übertragen"
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
msgid "# transmission failures for messages to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
msgid "# KEEPALIVE messages discarded (no session)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
msgid "# messages discarded due to lack of neighbour record"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
#, fuzzy
msgid "# bandwidth quota violations by other peers"
msgstr "Verfolgt die Bandbreitennutzung von gnunetd"
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "Fehler beim Parsen der Gerätedaten von `%s' bei %s:%d.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "# DISCONNECT-Meldungen empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "Fehler beim Senden der `%s' Nachricht an gnunetd\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
#, fuzzy
msgid "# SYN_ACK messages sent"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Fehler beim Aktualisieren der Daten des Moduls `%s'\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
#, fuzzy
msgid "# SYN messages received"
msgstr "# PING Nachrichten erstellt"
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
#, fuzzy
msgid "# SYN_ACK messages received"
msgstr "# SESSION_ACK-Meldungen empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
#, fuzzy
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
#, fuzzy
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
#, fuzzy
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
#, fuzzy
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
#, fuzzy
msgid "# ACK messages received"
msgstr "# CONNECT_ACK-Meldungen empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# verschlüsselter PONG Nachrichten gesendet"
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
#, fuzzy
msgid "# quota messages ignored (malformed)"
msgstr "# gap Anfragen verworfen: Kollision in RT"
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
#, fuzzy
msgid "# QUOTA messages received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
#, fuzzy
msgid "# DISCONNECT messages received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
msgid "# disconnected from peer upon explicit request"
msgstr ""
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
#, fuzzy
msgid "# validations running"
msgstr "Sqlite-Datenbank läuft\n"
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
#, fuzzy
msgid "# PING message for different peer received"
msgstr "# PING Nachrichten erstellt"
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr "PONG-Signatur für Knoten »%s« konnte nicht erstellt werden\n"
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
msgid "# HELLOs given to peerinfo"
msgstr ""
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+#, fuzzy
+msgid "receive data from peer"
+msgstr "# Bytes des Typs %d empfangen"
+
+#: src/transport/gnunet-transport-profiler.c:626
+msgid "iterations"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:631
+#, fuzzy
+msgid "number of messages to send"
+msgstr "Anzahl an Durchläufen"
+
+#: src/transport/gnunet-transport-profiler.c:636
+msgid "message size to use"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+msgid "Direct access to transport service."
+msgstr "Direkter Zugriff auf den Transportdienst"
+
+#: src/transport/gnunet-transport.c:413
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, fuzzy, c-format
msgid "Failed to connect to `%s'\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, fuzzy, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr "Adresse des Knotens `%s' konnte nicht ermittelt werden.\n"
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, c-format
msgid "Transmitting %u bytes\n"
msgstr ""
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr ""
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr "%24s: %-17s %4s (%u Verbindungen insgesamt)\n"
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
msgid "Connected to"
msgstr "Verbunden mit"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
msgid "Disconnected from"
msgstr ""
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, fuzzy, c-format
msgid "Received %u bytes\n"
msgstr "Dateien aus dem GNUnet herunterladen."
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, c-format
msgid "Peer `%s': %s %s\n"
msgstr "Knoten »%s«: %s %s\n"
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr "Verbindung zum Transportdienst konnte nicht hergestellt werden\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "Verbindung zum Transportdienst konnte nicht hergestellt werden\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
msgid "Failed to connect to transport service\n"
msgstr "Verbindung zum Transportdienst konnte nicht hergestellt werden\n"
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
#, fuzzy
msgid "print information for all peers (instead of only connected peers)"
msgstr "Informationen über verbundene Knoten ausgeben."
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
msgid "disconnect from a peer"
msgstr "Verbindung zu einem Knoten trennen"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
msgid "provide information about all current connections (once)"
msgstr ""
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr ""
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
msgid "do not resolve hostnames"
msgstr "Keine Rechnernamen auflösen"
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-msgid "Direct access to transport service."
-msgstr "Direkter Zugriff auf den Transportdienst"
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-#, fuzzy
-msgid "receive data from peer"
-msgstr "# Bytes des Typs %d empfangen"
-
-#: src/transport/gnunet-transport-profiler.c:586
-msgid "iterations"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "Anzahl an Durchläufen"
-
-#: src/transport/gnunet-transport-profiler.c:596
-msgid "message size to use"
-msgstr ""
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, fuzzy, c-format
msgid "Shutting down plugin `%s'\n"
msgstr "Collection `%s' begonnen.\n"
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, fuzzy, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr "GNUnet wurde erfolgreich heruntergefahren.\n"
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, fuzzy, c-format
msgid "Maximum number of requests is %u\n"
msgstr "Maximale Anzahl der Verbindungen ist %u\n"
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr "# Bytes verworfen von SMTP (ausgehend)"
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
msgid "# TCP sessions active"
msgstr "# aktive TCP-Sitzungen"
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
msgid "# bytes currently in TCP buffers"
msgstr "# Bytes derzeit in TCP-Puffern"
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
msgid "# bytes discarded by TCP (disconnect)"
msgstr "# Bytes verworfen von TCP (unterbrochen)"
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
msgid "# bytes discarded by TCP (timeout)"
msgstr "# Bytes verworfen von TCP (Zeitüberschreitung)"
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
msgid "# bytes transmitted via TCP"
msgstr "# Bytes über TCP übertragen"
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
#, fuzzy
msgid "# TCP WELCOME messages received"
msgstr "# verschlüsselter PONG Nachrichten empfangen"
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr "# Bytes empfangen über TCP"
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr " Verbindung fehlgeschlagen\n"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
#, fuzzy
msgid "# TCP server connect events"
msgstr "# verbundener Knoten"
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
msgid "Failed to start service.\n"
msgstr "Fehler beim Starten des Dienstes.\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr "TCP-Transportdienst wartet auf Port %llu\n"
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-#, fuzzy
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr "# Bytes empfangen über TCP"
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, fuzzy, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "UDP-Sockets können nicht geöffnet werden\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "»%s« ist keine gültige IP-Adresse.\n"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "»%s« ist keine gültige IP-Adresse.\n"
msgid "Failed to create UDP network sockets\n"
msgstr "UDP-Sockets können nicht geöffnet werden\n"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+#, fuzzy
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr "# Bytes empfangen über TCP"
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, fuzzy, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr "Der Transportdienst auf Port %d konnte nicht gestartet werden.\n"
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr "# Sitzungsschlüssel akzeptiert"
+#: src/transport/plugin_transport_xt.c:4010
+#, fuzzy, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+
+#: src/transport/plugin_transport_xt.c:4014
+#, fuzzy
+msgid "XT transport not listening on any port (client only)\n"
+msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+
+#: src/transport/plugin_transport_xt.c:4018
+#, fuzzy, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# aktive TCP-Sitzungen"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "UDP-Sockets können nicht geöffnet werden\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "UDP-Sockets können nicht geöffnet werden\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "UDP-Sockets können nicht geöffnet werden\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr "`%s' fehlgeschlagen für Laufwerk %s: %u\n"
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr "`%s' schlug fehl für Port %d: %s. Läuft gnunetd bereits?\n"
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, fuzzy, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr "%s schlug fehl, Nachrichten Typ %d ist bereits in Verwendung.\n"
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, c-format
msgid "Unknown address family %d\n"
msgstr ""
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr "Dienst »%s« läuft auf %s\n"
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, fuzzy, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr "Fehler beim Speichern der Konfigurationsdatei: `%s': %s.\n"
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr "Benutzer/Gruppe kann nicht zu »%s« geändert werden: %s\n"
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, fuzzy, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr "Konfigurationsdatei `%s' wurde erzeugt.\n"
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
#, fuzzy
msgid "Malformed configuration, exit ...\n"
msgstr "GNUnet Konfiguration"
msgid "Could not access configuration file `%s'\n"
msgstr "Konfigurationsdatei `%s' konnte nicht geparst werden.\n"
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "DEBUG"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "INFO"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr ""
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "WARNUNG"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "FEHLER"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr ""
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr ""
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr ""
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr "Unbekannte Adresse"
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr "Ungültige Adresse"
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, fuzzy, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr ""
"Die Konfigurationsdatei muss in der Sektion `%s' unter `%s' ein Verzeichnis "
"angeben, in dem FS Daten gespeichert werden.\n"
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, fuzzy, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, fuzzy, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, fuzzy, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, fuzzy, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n"
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, fuzzy, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n"
msgid "Could not load peer's private key\n"
msgstr "Anwendung `%s' konnte nicht initialisiert werden.\n"
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "RSA Signaturüberprüfung fehlgeschlagen bei %s:%d: %s\n"
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, fuzzy, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr "`%s' erwartet, dass `%s' ein Verzeichnis ist!\n"
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr ""
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr ""
msgid "Sent DNS request to %s\n"
msgstr ""
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s: Option »%s« ist mehrdeutig\n"
msgid "%s: option `--%s' does not allow an argument\n"
msgstr "%s: Option »--%s« erlaubt kein Argument\n"
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr "%s: Option »%c%s« erlaubt kein Argument\n"
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: Option »%s« benötigt ein Argument\n"
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s: unbekannte Option »--%s«\n"
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s: unbekannte Option »%c%s«\n"
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: unerlaubte Option -- %c\n"
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: ungültige Option -- %c\n"
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: Option benötigt ein Argument -- %c\n"
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s: Option »-W %s« ist mehrdeutig\n"
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr "%s: Option »-W %s« erlaubt kein Argument\n"
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, fuzzy, c-format
msgid "Use %s to get a list of options.\n"
msgstr "Verwenden Sie --help, um eine Liste der Optionen zu erhalten.\n"
-#: src/util/getopt.c:987
-#, fuzzy, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr "Die Option »%s« ergibt keinen Sinn ohne die Option »%s«.\n"
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, fuzzy, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr "Unbekannte Operation `%s'\n"
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr ""
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
"Argumente, die für lange Optionen zwingend sind, sind auch für kurze "
"Optionen zwingend.\n"
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr ""
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr ""
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr ""
"Einen Wert aus der Konfigurationsdatei auf der Standardausgabe ausgeben"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr "Sie müssen für die Option »%s« zusätzlich eine Zahl angeben.\n"
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr "Sie müssen eine relative Zeit zu der Option »%s« übergeben.\n"
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, fuzzy, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr "Sie müssen eine relative Zeit zu der Option »%s« übergeben.\n"
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, fuzzy, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr "Sie müssen für die Option »%s« zusätzlich eine Zahl angeben.\n"
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "Konfiguration konnte nicht aus %s geladen werden\n"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, fuzzy, c-format
msgid "%s or %s argument is required\n"
msgstr "Option `%s' macht keinen Sinn ohne die Option `%s'.\n"
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr ""
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
#, fuzzy
msgid "print available configuration sections"
msgstr "GNUnet Konfiguration"
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
msgid "Manipulate GNUnet configuration files"
msgstr "GNUnet-Konfigurationsdateien bearbeiten"
msgid "Failed to open `%s': %s\n"
msgstr "»%s« kann nicht geöffnet werden: %s\n"
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, c-format
msgid ""
"\n"
"\n"
"Schreiben in »%s« nicht möglich: %s\n"
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, c-format
msgid ""
"\n"
"\n"
"Abgeschlossen!\n"
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, fuzzy, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr "Kommando `%s' wurde nicht gefunden!\n"
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr ""
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, fuzzy, c-format
msgid "Could not read hostkey file: %s\n"
msgstr "PID konnte nicht in Datei `%s' geschrieben werden: %s.\n"
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
msgid "Manipulate GNUnet private ECC key files"
msgstr ""
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr "URL beginnt nicht mit »%s«\n"
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, fuzzy, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr "Das Parsen des Hello von `%s' schlug fehl.\n"
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
msgid "Manipulate GNUnet proof of work files"
msgstr ""
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr "URL beginnt nicht mit »%s«\n"
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr "Verbindung zu %u.%u.%u.%u:%u fehlgeschlagen: %s\n"
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr ""
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, fuzzy, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr "Knoten `%s' konnte nicht in der Routing Tabelle gefunden werden!\n"
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr ""
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr "Öffentliche IP-Adresse konnte nicht ermittelt werden.\n"
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "Konfigurationsdatei `%s' wurde erzeugt.\n"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, fuzzy, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr "Konfigurationsdatei `%s' wurde erzeugt.\n"
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "GNUnet Konfiguration"
msgid "Could not resolve our FQDN: %s\n"
msgstr "`%s' konnte nicht aufgelöst werden: %s\n"
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr "Aufruf von `%s' gibt %d zurück.\n"
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "b"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr "µs"
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr ""
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr "0 ms"
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "ms"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "s"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "m"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "h"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
msgid "day"
msgstr "Tag"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
msgid "days"
msgstr "Tage"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr ""
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr "IPv6-Adresse beginnt nicht mit »[«\n"
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr "IPv6-Adresse enthält kein »:« zur Abtrennung der Portnummer\n"
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr "IPv6-Adresse enthält kein »]« vor »:« zur Abtrennung der Portnummer\n"
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr "IPv6-Adresse enthält keine gültige Portnummer nach dem letzten »:«\n"
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, fuzzy, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr "Ungültige Antwort auf `%s' von `%s'\n"
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr "Port außerhalb des Bereichs\n"
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, c-format
msgid "Malformed port policy `%s'\n"
msgstr ""
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr "Ungültiges Format für IP: »%s«\n"
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr "Ungültige Netzwerk-Notation ('/%d ist nicht gültig in IPv4 CIDR)."
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, fuzzy, c-format
msgid "Invalid format: `%s'\n"
msgstr "Ungültiges Format für IP: `%s'\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr "Ungültige Netzwerk-Notation (endet nicht mit »;«: »%s«)\n"
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, fuzzy, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr "Falsches Format `%s' für Netzmaske: %s\n"
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, fuzzy, c-format
msgid "Wrong format `%s' for network\n"
msgstr "Falsches Format `%s' für Netzwerk: %s\n"
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
msgid "# Active channels"
msgstr "# aktive Kanäle"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
#, fuzzy
msgid "# Messages dropped in cadet queue (overflow)"
msgstr "# Bytes verworfen von TCP (ausgehend)"
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
#, fuzzy
msgid "# ICMP packets received from cadet"
msgstr "# Bytes empfangen über TCP"
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
#, fuzzy
msgid "# UDP packets received from cadet"
msgstr "# Bytes empfangen über TCP"
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
#, fuzzy
msgid "# TCP packets received from cadet"
msgstr "# Bytes empfangen über TCP"
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr "# PING Nachrichten erstellt"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
#, fuzzy
msgid "# Packets dropped (channel not yet online)"
msgstr "# Bytes verworfen von TCP (ausgehend)"
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
#, fuzzy
msgid "# Packets received from TUN interface"
msgstr ""
"Die Formatüberprüfung des Pakets, das von %s:%d (UDP6) empfangen wurde, "
"schlug fehl."
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
#, fuzzy
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr "Die öffentliche IPv6-Adresse konnte nicht ermittelt werden!\n"
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
msgid "# Active destinations"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
msgid "Must specify valid IPv6 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
msgid "Must specify valid IPv4 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr "Tunnel über VPN einrichten."
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
#, fuzzy
msgid "Failed to connect to the namestore!\n"
msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "`%s' schlug fehl bei %s:%d mit dem Fehler: `%s'.\n"
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, fuzzy, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "Protokollverletzung auf Socket. Kommando erwartet.\n"
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, fuzzy, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "`%s' schlug bei Datei `%s' fehl. Ort: %s:%d. Fehler: %s\n"
#, fuzzy
-#~ msgid "XT transport listening on port %llu\n"
-#~ msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "Konfigurationsdatei `%s' konnte nicht geöffnet werden.\n"
#, fuzzy
-#~ msgid "XT transport not listening on any port (client only)\n"
-#~ msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "»%s« ist keine gültige IP-Adresse.\n"
#, fuzzy
-#~ msgid "XT transport advertises itself as being on port %llu\n"
-#~ msgstr "TCP-Transportdienst wartet auf Port %llu\n"
+#~ msgid "Specify a timeout for the lookup"
+#~ msgstr "Die Priorität des Inhalts angeben"
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr "# aktive TCP-Sitzungen"
+#~ msgid "Unable to parse CAA record string `%s'\n"
+#~ msgstr "Fehler beim Speichern der Konfigurationsdatei `%s':"
#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "UDP-Sockets können nicht geöffnet werden\n"
+#~ msgid "reduce output"
+#~ msgstr "Ausführliche Ausgabe"
#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "UDP-Sockets können nicht geöffnet werden\n"
+#~ msgid "OpenID Connect REST API initialized\n"
+#~ msgstr " Verbindung fehlgeschlagen\n"
#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
-#~ msgstr "UDP-Sockets können nicht geöffnet werden\n"
+#~ msgid "CONFIG REST API initialized\n"
+#~ msgstr " Verbindung fehlgeschlagen\n"
#, fuzzy
-#~ msgid "Print information about DV state"
-#~ msgstr "Informationen über andere GNUnet Knoten ausgeben."
+#~ msgid "Option `%s' can't be used with other options.\n"
+#~ msgstr "Die Option »%s« ergibt keinen Sinn ohne die Option »%s«.\n"
#, fuzzy
#~ msgid "Invalid tunnel owner `%s'\n"
#~ msgid "Provide information about a particular tunnel"
#~ msgstr "Informationen über andere GNUnet Knoten ausgeben."
-#, fuzzy
-#~ msgid "Failed to store membership information!\n"
-#~ msgstr "Fehler beim Speichern der Konfiguration!"
-
-#, fuzzy
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "Ungültiges Argument »%s«\n"
-
-#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to get fragment!\n"
-#~ msgstr ""
-#~ "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-
-#, fuzzy
-#~ msgid "Failed to get message!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to get message fragment!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr ""
-#~ "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr ""
-#~ "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "Es konnte keine Verbindung mit gnunetd hergestellt werden.\n"
-
-#, fuzzy
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to begin synchronizing state!\n"
-#~ msgstr ""
-#~ "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-
-#, fuzzy
-#~ msgid "Failed to end synchronizing state!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "Zustellung der Nachricht `%s' fehlgeschlagen.\n"
-
-#, fuzzy
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr ""
-#~ "Statistiken über den Netzwerkverkehr konnten nicht ermittelt werden.\n"
-
-#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
-#~ msgstr "SQLite-Datenbank konnte nicht initialisiert werden: %s.\n"
-
-#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
-#~ msgstr "Fehler beim Lesen der Freunde-Liste von `%s'\n"
-
-#, fuzzy
-#~ msgid "`%s' failed at %s:%d with error: %s (%d)\n"
-#~ msgstr "`%s' schlug bei %s:%d mit dem Fehler %s fehl\n"
-
-#, fuzzy
-#~ msgid "SQLite database running\n"
-#~ msgstr "SQL Datenbank beschädigt, Ergebnis wird ignoriert.\n"
-
-#, fuzzy
-#~ msgid "--place missing or invalid.\n"
-#~ msgstr "Ungültige Antwort auf `%s'.\n"
-
-#, fuzzy
-#~ msgid "name or public key of ego"
-#~ msgstr "Ungültiger Parameter: `%s'\n"
-
-#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "Anzahl an Durchläufen"
-
#, fuzzy
#~ msgid "Could not resolve `%s' (%s): %s\n"
#~ msgstr "`%s' konnte nicht aufgelöst werden: %s\n"
msgstr ""
"Project-Id-Version: gnunet 0.9.5a\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2013-02-23 17:50+0100\n"
"Last-Translator: Miguel Ángel Arruga Vivas <rosen644835@gmail.com>\n"
"Language-Team: Spanish <es@li.org>\n"
-"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, c-format
msgid "Failed to remove configuration file %s\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr "Se produjo un fallo al eliminar el directorio «servicehome» %s.\n"
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
#, fuzzy
msgid "Message was sent successfully"
msgstr "El almacén de nombres añadió el registro satisfactoriamente"
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
#, fuzzy
msgid "We disconnected from ARM before we could send a request"
msgstr "# desconexiones del par debido a una petición explícita"
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
#, fuzzy
msgid "Unknown request status"
msgstr "Usuario desconocido «%s»\n"
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "# elementos almacenados"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
#, fuzzy
msgid "is starting"
msgstr "'%s' comenzando\n"
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "# elementos almacenados"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
#, fuzzy
msgid "is starting already"
msgstr "'%s' comenzando\n"
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "'%s' comenzando\n"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
#, fuzzy
msgid "is started already"
msgstr "'%s' comenzando\n"
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "'%s' comenzando\n"
# Miguel: ¿Debería cambiar las siglas de ARM?
# De momento las he mantenido con una traducción en
# otro mensaje.
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
#, fuzzy
msgid "service is not known to ARM"
msgstr "El servicio «%s» es desconocido para el ARM.\n"
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "El proceso del servicio no devolvió un estado\n"
# Miguel: ¿Es mejor «ya que» que «porque» o «debido al apagado»?
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
#, fuzzy
msgid "service cannot be manipulated because ARM is shutting down"
msgstr "Petición ignorada porque el ARM se está apagando.\n"
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "Código de respuesta del ARM desconocido.\n"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr "Error fatal al inicializar la API del ARM.\n"
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, fuzzy, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr "Se produjo un fallo al iniciar el servicio «%s»\n"
msgid "Failed to stop the ARM service: %s\n"
msgstr "Fichero almacenado en '%s'.\n"
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "Se produjo un fallo al enviar una petición al servicio de transporte\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, fuzzy, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr "Se produjo un fallo al iniciar el servicio «%s»\n"
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, fuzzy, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr "Se produjo un fallo al enviar una petición al servicio de transporte\n"
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, fuzzy, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr "Se produjo un fallo al escribir «%s»: %s\n"
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, fuzzy, c-format
msgid "Failed to request a list of services: %s\n"
msgstr "Se produjo un fallo al iniciar el servicio «%s»\n"
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
msgid "Error communicating with ARM. ARM not running?\n"
msgstr "Error al comunicar con el ARM. ¿Está el ARM ejecutándose?\n"
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
msgid "Running services:\n"
msgstr "Servicios en ejecución:\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr "Ahora solo monitorizando, pulsa CTRL-C para parar.\n"
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr "%s detenido.\n"
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, fuzzy, c-format
msgid "Starting %s...\n"
msgstr "Iniciando descarga «%s».\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr "Deteniendo %s...\n"
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, fuzzy, c-format
msgid "Unknown status %u for service %s.\n"
msgstr "Solicitando incio del servicio «%s».\n"
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
msgid "stop all GNUnet services"
msgstr "detiene todos los servicios de GNUnet"
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr "inicia un servicio particular"
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr "detiene un servicio particular"
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
msgid "start all GNUnet default services"
msgstr "inicia todos los servicios predeterminados de GNUnet"
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
msgid "stop and start all GNUnet default services"
msgstr "detiene e inicia todos los servicios predeterminados de GNUnet"
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr "borrar el directorio y el fichero de configuración al salir"
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr "monitoriza actividades de ARM"
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr "no imprime mensajes de estado"
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr "sale con estado de error si la operación no termina despues del DELAY"
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
msgid "list currently running services"
msgstr "lista de servicios actualmente en ejecución"
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr "no permite heredar la salida estándar a «gnunet-service-arm»"
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr "no permite heredar la salida de error estándar a «gnunet-service-arm»"
# Miguel: ARM se mantiene en todo el texto, aquí está la traducción.
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
"Servicios de control y el Gestor de Reinicio Automático (ARM en inglés)"
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
"configuración!\n"
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
"La ruta tipo UNIX «%s» es demasiado larga, la longitud máxima es %llu\n"
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, c-format
msgid "Using `%s' instead\n"
msgstr "Usando «%s» en su defecto\n"
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
"domain socket: %s\n"
msgstr ""
-"Deshabilitando el soporte de dominio de «sockets» UNIX para el servicio "
-"«%s», no se pudo crear un «socket» UNIX: %s\n"
+"Deshabilitando el soporte de dominio de «sockets» UNIX para el servicio «%"
+"s», no se pudo crear un «socket» UNIX: %s\n"
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "Se produjo un fallo al resolver «%s»: %s\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr "No se encontró la dirección %s para «%s».\n"
msgid "Initiating shutdown as requested by client.\n"
msgstr "Iniciando apagado bajo petición del cliente.\n"
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-#, fuzzy
-msgid "solver to use"
-msgstr "valor a establecer"
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr "experimento para usar"
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-#, fuzzy
-msgid "print logging"
-msgstr "Iniciando descarga «%s».\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr "guarda protocolo al fichero en disco"
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr "deshabilita normalización"
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, fuzzy, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr "¡No se puede inicializar el resolvedor!\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, fuzzy, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-# Miguel: "Inbound" lo he traducido como entrada en todo el texto.
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, fuzzy, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr "La cuota de entrada configurada para la red «%s» es %llu\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, fuzzy, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/plugin_ats2_common.c:90
-#, fuzzy, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, fuzzy, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n"
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, fuzzy, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n"
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "Se produjo un fallo al cargar la configuración de %s\n"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, fuzzy, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
-"de banda predeterminado %llu\n"
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, fuzzy, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
msgstr ""
-"No hay configuración de cuota de entrada para la red '%s', asignando el "
-"ancho de banda predeterminado (%llu)\n"
-# Miguel: "Outbound" lo he traducido como salida en todo el texto.
-#: src/ats/plugin_ats_mlp.c:2690
-#, fuzzy, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr "La cuota de salida configurada para la red «%s» es %llu\n"
-
-# Miguel: "Outbound" lo he traducido como salida en todo el texto.
-#: src/ats/plugin_ats_mlp.c:2699
-#, fuzzy, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
-msgstr "La cuota de salida configurada para la red «%s» es %llu\n"
-
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr "Se produjo un fallo al cargar la configuración de %s\n"
+msgid "Start logging `%s'\n"
+msgstr "Iniciando descarga «%s».\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, fuzzy, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr "Fallo al conectar a gnunetd.\n"
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr ""
-
-#: src/ats-tests/ats-testing-log.c:892
-#, fuzzy, c-format
-msgid "Start logging `%s'\n"
-msgstr "Iniciando descarga «%s».\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+#, fuzzy
+msgid "solver to use"
+msgstr "valor a establecer"
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr "experimento para usar"
+
# Miguel: ¿Como podría traducir "resolutions" y "resolve"?
# Son difíciles de no calcar, puesto que no conozco como expresar
# el concepto de obtener una dirección a partir de un nombre
msgid "Print information about ATS state"
msgstr "Imprime información acerca del estado del ATS"
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
+msgid ""
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:3306
+#, fuzzy
+msgid "print logging"
+msgstr "Iniciando descarga «%s».\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
+msgstr "guarda protocolo al fichero en disco"
+
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
+msgstr "deshabilita normalización"
+
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, fuzzy, c-format
+msgid "Failed to initialize solver `%s'!\n"
+msgstr "¡No se puede inicializar el resolvedor!\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:304
+#, fuzzy, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
+msgstr ""
+"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+# Miguel: "Inbound" lo he traducido como entrada en todo el texto.
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, fuzzy, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
+msgstr "La cuota de entrada configurada para la red «%s» es %llu\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:359
+#, fuzzy, c-format
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
+msgstr ""
+"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/plugin_ats2_common.c:90
+#, fuzzy, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+"No se pudieron cargar las cuotas para la red «%s»: «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1870
+#, fuzzy, c-format
+msgid "Adding address for peer `%s' multiple times\n"
+msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n"
+
+#: src/ats/plugin_ats_mlp.c:1914
+#, fuzzy, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
+msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n"
+
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "Se produjo un fallo al cargar la configuración de %s\n"
+
+#: src/ats/plugin_ats_mlp.c:2671
+#, fuzzy, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
+msgstr ""
+"No hay configurada una cuota de salida para la red «%s», asignando el ancho "
+"de banda predeterminado %llu\n"
+
+#: src/ats/plugin_ats_mlp.c:2680
+#, fuzzy, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
+msgstr ""
+"No hay configuración de cuota de entrada para la red '%s', asignando el "
+"ancho de banda predeterminado (%llu)\n"
+
+# Miguel: "Outbound" lo he traducido como salida en todo el texto.
+#: src/ats/plugin_ats_mlp.c:2690
+#, fuzzy, c-format
+msgid ""
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
+msgstr "La cuota de salida configurada para la red «%s» es %llu\n"
+
+# Miguel: "Outbound" lo he traducido como salida en todo el texto.
+#: src/ats/plugin_ats_mlp.c:2699
+#, fuzzy, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr "La cuota de salida configurada para la red «%s» es %llu\n"
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr "Se produjo un fallo al cargar la configuración de %s\n"
+
#: src/auction/gnunet-auction-create.c:163
msgid "description of the item to be sold"
msgstr "descripción del elemento que está por vender"
#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
msgid "help text"
msgstr "texto de ayuda"
msgid "Extra arguments are not applicable in combination with this option.\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/cadet/gnunet-cadet.c:795
#, fuzzy, c-format
msgid "Invalid target `%s'\n"
msgstr "Parámetro no válido «%s»\n"
-#: src/cadet/gnunet-cadet.c:829
+#: src/cadet/gnunet-cadet.c:832
#, fuzzy
msgid "No action requested\n"
msgstr "Colección detenida.\n"
-#: src/cadet/gnunet-cadet.c:854
+#: src/cadet/gnunet-cadet.c:857
#, fuzzy
msgid "Provide information about a particular connection"
msgstr "proveer información acerca de un túnel en particular"
-#: src/cadet/gnunet-cadet.c:858
+#: src/cadet/gnunet-cadet.c:861
msgid "Activate echo mode"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
+#: src/cadet/gnunet-cadet.c:866
msgid "Listen for connections using a shared secret among sender and recipient"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
+#: src/cadet/gnunet-cadet.c:871
#, fuzzy
msgid "Provide information about a patricular peer"
msgstr "proveer información acerca de un túnel en particular"
-#: src/cadet/gnunet-cadet.c:872
+#: src/cadet/gnunet-cadet.c:875
#, fuzzy
msgid "Provide information about all peers"
msgstr "proveer información acerca de un túnel en particular"
-#: src/cadet/gnunet-cadet.c:876
+#: src/cadet/gnunet-cadet.c:879
#, fuzzy
msgid "Provide information about all tunnels"
msgstr "proveer información acerca de un túnel en particular"
msgstr ""
"El cliente se desconectó del servicio principal, tratando de reconectar.\n"
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgstr ""
"Se produjo un fallo al alojar las direcciones IP para el nuevo destino\n"
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, fuzzy, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr "¡No se pudo conectar al servicio %s!\n"
msgid "Could not start playback audio helper.\n"
msgstr "No se pudo empezar a publicar.\n"
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr "# amigos conectados"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
#, fuzzy
msgid "key received"
msgstr "# claves de sesión recibidas"
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
#, fuzzy
msgid "connection established"
msgstr "Colección detenida.\n"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "Desconectado de"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
#, fuzzy
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
"El cliente se desconectó del servicio principal, tratando de reconectar.\n"
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "<tiempo desconocido>"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, fuzzy, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr "%24s: %-17s %4s (%u conexiones en total)\n"
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Parámetro no válido «%s» en la línea de comandos\n"
msgstr "¡Se produjo un fallo al conectar con el servicio DHT!\n"
# Miguel: ¿Quizá continuamente fuese mejor?
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
msgid "provide information about all current connections (continuously)"
msgstr ""
"provee información sobre todas las conexiones actuales (de forma continua)"
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
msgid "Print information about connected peers."
msgstr "Imprime información sobre los pares conectados."
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
msgid "# send requests dropped (disconnected)"
msgstr "# peticiones de envío descartadas (desconectado)"
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, c-format
msgid "# bytes of messages of type %u received"
msgstr "# bytes de mensajes del tipo %u recibidos"
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
msgid "# messages discarded (session disconnected)"
msgstr "# mensajes descartados (sesión desconectada)"
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, fuzzy, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr "# bytes de mensajes del tipo %u recibidos"
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
"Al servicio principal le falta la configuración de la clave de máquina "
"(HOSTKEY). Saliendo.\n"
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "El servicio principal de «%4s» está listo.\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr "# bytes cifrados"
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr "# bytes descifrados"
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
#, fuzzy
msgid "# PAYLOAD dropped (out of order)"
msgstr "# bytes omitidos (fuera de secuencia)"
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr "# intercambio de claves iniciados"
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr "# intercambio de claves parados"
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
#, fuzzy
msgid "# PING messages transmitted"
msgstr "# mensajes PONG creados"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
#, fuzzy
msgid "# duplicate ephemeral keys ignored"
msgstr "# mapas de tipos recibidos"
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
#, fuzzy
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr "# mensajes «SET_KEY» descifrados"
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
#, fuzzy
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr "# mensajes «SET_KEY» descifrados"
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "# mapas de tipos recibidos"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
msgid "# PING messages received"
msgstr "# mensajes PING recibidos"
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
#, fuzzy
msgid "# PING messages dropped (out of order)"
msgstr "# Mensajes P2P omitidos debido a saturación de la cola"
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
msgid "# PONG messages created"
msgstr "# mensajes PONG creados"
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
msgid "# sessions terminated by timeout"
msgstr "# sesiones terminadas por plazo de expiración"
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
msgid "# keepalive messages sent"
msgstr "# mensajes «keepalive» enviados"
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
msgid "# PONG messages received"
msgstr "# mensajes PONG recibidos"
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
#, fuzzy
msgid "# PONG messages dropped (connection down)"
msgstr "# mensajes PONG recibidos"
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
#, fuzzy
msgid "# PONG messages dropped (out of order)"
msgstr "# Mensajes P2P omitidos debido a saturación de la cola"
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
msgid "# PONG messages decrypted"
msgstr "# mensajes PONG descifrados"
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
msgid "# session keys confirmed via PONG"
msgstr "# claves de sesión confirmadas vía PONG"
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
#, fuzzy
msgid "# timeouts prevented via PONG"
msgstr "# bytes recibidos vía TCP"
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
msgid "# rekey operations confirmed via PONG"
msgstr "# operaciones de cambio de clave confirmadas vía PONG"
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
#, fuzzy
msgid "# DATA message dropped (out of order)"
msgstr "# bytes omitidos (fuera de secuencia)"
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
#, fuzzy
msgid "# sessions terminated by key expiration"
msgstr "# sesiones terminadas por plazo de expiración"
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
msgid "# bytes dropped (duplicates)"
msgstr "# bytes omitidos (duplicados)"
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
msgid "# bytes dropped (out of sequence)"
msgstr "# bytes omitidos (fuera de secuencia)"
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
msgid "# bytes dropped (ancient message)"
msgstr "# bytes omitidos (mensaje antiguo)"
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
msgid "# bytes of payload decrypted"
msgstr "# bytes de «payload» descifrados"
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
msgid "# peers connected"
msgstr "# pares conectados"
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
msgid "# type map refreshes sent"
msgstr "# envíos de refrescos del mapa de tipos"
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
#, fuzzy
msgid "# outdated typemap confirmations received"
msgstr "Se produjo un fallo al encolar una confirmación de recepción\n"
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
#, fuzzy
msgid "# valid typemap confirmations received"
msgstr "Se produjo un fallo al encolar una confirmación de recepción\n"
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
msgid "# type maps received"
msgstr "# mapas de tipos recibidos"
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr "# actualizaciones de mi mapa de tipos"
msgid "Unable to parse CRED record string `%s'\n"
msgstr "No se pudo procesar la cadena de registro VPN «%s»\n"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, fuzzy, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr "'%s': servicio desconocido: %s\n"
msgid "GNUnet credential resolver tool"
msgstr "Herramienta de acceso GNUnet GNS"
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, c-format
msgid "Failed to connect to GNS\n"
msgstr "Se produjo un fallo al conectar con GNS\n"
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, c-format
msgid "Failed to connect to namestore\n"
msgstr "Se produjo un fallo al conectar con el almacén de nombres\n"
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "No se pudo procesar la cadena de registro TLSA «%s»\n"
-#: src/credential/plugin_rest_credential.c:1128
-#, fuzzy
-msgid "GNS REST API initialized\n"
-msgstr "Conexión fallida\n"
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
msgid "# bytes stored"
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
"Se intentó cerrar sqlite sin finalizar todas las sentencias preparadas.\n"
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr "«%s» para «%s» falló en %s: %d con error: %s\n"
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr "Base de datos Mysql ejecutándose\n"
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
msgid "Failed to drop table from database.\n"
msgstr "Se produjo un fallo al borrar una tabla de la base de datos.\n"
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr "Base de datos Postgres ejecutándose\n"
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr "Imposible inicializar SQLite: %s.\n"
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
msgid "Sqlite database running\n"
msgstr "Base de datos sqlite ejecutándose\n"
msgid "the query key"
msgstr "la clave de búsqueda"
-#: src/dht/gnunet-dht-get.c:253
-msgid "how many parallel requests (replicas) to create"
-msgstr "cuantas peticiones paralelas (réplicas) crear"
-
-#: src/dht/gnunet-dht-get.c:258 src/dht/gnunet-dht-monitor.c:313
-msgid "the type of data to look for"
-msgstr "el tipo de datos a buscar"
-
-#: src/dht/gnunet-dht-get.c:263
-msgid "how long to execute this query before giving up?"
-msgstr "¿cuánto tiempo se debe ejecutar esta consulta antes de abandonar?"
-
-#: src/dht/gnunet-dht-get.c:267 src/dht/gnunet-dht-put.c:202
-msgid "use DHT's demultiplex everywhere option"
-msgstr "opción para usar el demultiplexado de la DHT siempre"
-
-#: src/dht/gnunet-dht-get.c:280
-msgid "Issue a GET request to the GNUnet DHT, prints results."
-msgstr ""
-"Iniciando una peticion «GET» a la DHT de GNUnet, imprimiendo resultados."
-
-#: src/dht/gnunet-dht-monitor.c:319
-msgid "how long should the monitor command run"
-msgstr "cuanto tiempo debe ejecutarse el comando de monitorización"
-
-#: src/dht/gnunet-dht-monitor.c:324 src/fs/gnunet-download.c:372
-#: src/nse/gnunet-nse-profiler.c:878
-msgid "be verbose (print progress information)"
-msgstr "ser prolijo (imprime información de progreso)"
-
-#: src/dht/gnunet-dht-monitor.c:337
-msgid "Prints all packets that go through the DHT."
-msgstr "Imprime todos los paquetes que pasan por la DHT."
-
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, fuzzy, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr "El número máximo de conexiones es %u\n"
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-msgid "number of peers to start"
-msgstr "número de pares para empezar"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-"nombre del fichero con la información de acceso usada para la batería de "
-"pruebas"
+#: src/dht/gnunet-dht-get.c:253
+msgid "how many parallel requests (replicas) to create"
+msgstr "cuantas peticiones paralelas (réplicas) crear"
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
+#: src/dht/gnunet-dht-get.c:258 src/dht/gnunet-dht-monitor.c:313
+msgid "the type of data to look for"
+msgstr "el tipo de datos a buscar"
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
+#: src/dht/gnunet-dht-get.c:263
+msgid "how long to execute this query before giving up?"
+msgstr "¿cuánto tiempo se debe ejecutar esta consulta antes de abandonar?"
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
+#: src/dht/gnunet-dht-get.c:267 src/dht/gnunet-dht-put.c:202
+msgid "use DHT's demultiplex everywhere option"
+msgstr "opción para usar el demultiplexado de la DHT siempre"
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
+#: src/dht/gnunet-dht-get.c:280
+msgid "Issue a GET request to the GNUnet DHT, prints results."
msgstr ""
+"Iniciando una peticion «GET» a la DHT de GNUnet, imprimiendo resultados."
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
+#: src/dht/gnunet-dht-monitor.c:319
+msgid "how long should the monitor command run"
+msgstr "cuanto tiempo debe ejecutarse el comando de monitorización"
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
+#: src/dht/gnunet-dht-monitor.c:324 src/fs/gnunet-download.c:372
+#: src/nse/gnunet-nse-profiler.c:878
+msgid "be verbose (print progress information)"
+msgstr "ser prolijo (imprime información de progreso)"
-#: src/dht/gnunet_dht_profiler.c:1009
-#, fuzzy
-msgid "Measure quality and performance of the DHT service."
-msgstr "Medir la calidad y rendimiento del servicio NSE."
+#: src/dht/gnunet-dht-monitor.c:337
+msgid "Prints all packets that go through the DHT."
+msgstr "Imprime todos los paquetes que pasan por la DHT."
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgid "# FIND PEER messages initiated"
msgstr "# mensajes «FIND PEER» iniciados"
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
#, fuzzy
msgid "# requests TTL-dropped"
msgstr "# peticiones unidas"
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr "# Pares excluidos del encaminado debido a «Bloomfilter»"
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
msgid "# Peer selection failed"
msgstr "# Selecciones de pares fallidas"
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
msgid "# PUT requests routed"
msgstr "# Peticiones «PUT» encaminadas"
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
msgid "# PUT messages queued for transmission"
msgstr "# mensajes «PUT» encolados para transmisión"
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
msgid "# P2P messages dropped due to full queue"
msgstr "# Mensajes P2P omitidos debido a saturación de la cola"
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
msgid "# GET requests routed"
msgstr "# Peticiones «GET» encaminadas"
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
msgid "# GET messages queued for transmission"
msgstr "# Mensajes «GET» encolados para transmisión"
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
msgid "# RESULT messages queued for transmission"
msgstr "# Mensajes «RESULT» encolados para transmisión"
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
#, fuzzy
msgid "# Expired PUTs discarded"
msgstr "# respuestas irrelevantes descartadas"
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
msgid "# P2P PUT requests received"
msgstr "# Peticiones «PUT» P2P recibidas"
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
#, fuzzy
msgid "# P2P PUT bytes received"
msgstr "# Peticiones «PUT» P2P recibidas"
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr "# Peticiones «FIND PEER» ignoradas debido a «Bloomfilter»"
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr "# Peticiones «FIND PEER» ignoradas debido a falta de «HELLO»"
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
msgid "# P2P GET requests received"
msgstr "# Peticiones «GET» P2P recibidas"
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
#, fuzzy
msgid "# P2P GET bytes received"
msgstr "# Peticiones «GET» P2P recibidas"
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
msgid "# P2P FIND PEER requests processed"
msgstr "# Peticiones «FIND PEER» P2P procesadas"
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
msgid "# P2P GET requests ONLY routed"
msgstr "# Peticiones «GET» P2P SOLAMENTE encaminadas"
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
#, fuzzy
msgid "# Expired results discarded"
msgstr "# respuestas irrelevantes descartadas"
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
msgid "# P2P RESULTS received"
msgstr "# Resultados (RESULTS) P2P recibidos"
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
#, fuzzy
msgid "# P2P RESULT bytes received"
msgstr "# Resultados (RESULTS) P2P recibidos"
msgid "# Entries removed from routing table"
msgstr "# Entradas eliminadas de la tabla de encaminamiento"
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr "# Entradas añadidas a la tabla de encaminamiento"
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
msgid "# DHT requests combined"
msgstr "# Peticiones a la DHT combinadas"
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, fuzzy, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr "El número máximo de conexiones es %u\n"
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+msgid "number of peers to start"
+msgstr "número de pares para empezar"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+"nombre del fichero con la información de acceso usada para la batería de "
+"pruebas"
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+#, fuzzy
+msgid "Measure quality and performance of the DHT service."
+msgstr "Medir la calidad y rendimiento del servicio NSE."
+
#: src/dht/plugin_block_dht.c:189
#, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr "# Peticiones DNS recibidas vía interfaz TUN"
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
msgid "need a valid IPv4 or IPv6 address\n"
msgstr "se necesita una dirección IPv4 o IPv6 válida\n"
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, fuzzy, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
msgstr "«%s» debe ser instalado con SUID, se niega a arrancar\n"
+#: src/dv/gnunet-dv.c:175
+#, fuzzy
+msgid "Print information about DV state"
+msgstr "Imprime información acerca del estado del ATS"
+
#: src/exit/gnunet-daemon-exit.c:960
msgid "# TCP packets sent via TUN"
msgstr "# Paquetes TCP enviados vía TUN"
msgid "# ICMP packets sent via TUN"
msgstr "# Paquetes ICMP enviados vía TUN"
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
msgid "# UDP packets sent via TUN"
msgstr "# Paquetes UDP enviados vía TUN"
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
#, fuzzy
msgid "# Bytes received from CADET"
msgstr "# Bytes recibidos de TUN"
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
#, fuzzy
msgid "# UDP IP-exit requests received via cadet"
msgstr "# Peticiones de salida IP por UDP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
#, fuzzy
msgid "# UDP service requests received via cadet"
msgstr "# Peticiones de servicio UDP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
#, fuzzy
msgid "# TCP service creation requests received via cadet"
msgstr "# Peticiones de creaciones de servicio TCP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
#, fuzzy
msgid "# TCP IP-exit creation requests received via cadet"
msgstr "# Peticiones de creación de salida IP por TCP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
msgid "# TCP DATA requests dropped (no session)"
msgstr "# Peticiones de datos (DATA) TCP omitidas (no hay sesión)"
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
#, fuzzy
msgid "# TCP data requests received via cadet"
msgstr "# Peticiones de datos TCP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
#, fuzzy
msgid "# ICMP IP-exit requests received via cadet"
msgstr "# Peticiones de salida IP por ICMP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr "# Paquetes ICMPv4 omitidos (tipo no permitido)"
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr "# Paquetes ICMPv6 omitidos (tipo no permitido)"
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
#, fuzzy
msgid "# ICMP service requests received via cadet"
msgstr "# Peticiones de servicio ICMP recibidas vía mesh"
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr "# Paquetes ICMPv4 omitidos (imposible atravesar v6)"
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr "# Paquetes ICMPv6 omitidos (imposible atravesar v4)"
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr "# Túneles interiores MESH creados"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr "Hay registros de servicios duplicados para «%s:%u»\n"
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr "# Bytes transmitidos vía túneles MESH"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr "# Paquetes ICMP omitidos (tipo no permitido)"
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr "Paquete ICMP omitido, no hay información de conexiones coincidente\n"
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr "Paquete UDP omitido, no hay información de conexiones coincidente\n"
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr "Paquete TCP omitido, no hay información de conexiones coincidente\n"
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
msgid "# Packets received from TUN"
msgstr "# Paquetes recibidos de TUN"
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
msgid "# Bytes received from TUN"
msgstr "# Bytes recibidos de TUN"
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr "Opciones de paquete IPv4 recibidas. Ignoradas.\n"
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
"Recibido paquete IPv4 con cabecera «next» no soportada %u. Ignorado.\n"
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
"Recibido paquete IPv6 con cabecera «next» no soportada %d. Ignorado.\n"
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr "Recibido paquete de protocolo desconocido %u. Ignorado.\n"
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, fuzzy, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr "Las opción «%s» o «%s» es necesaria.\n"
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-"¡No se encontraron direcciones para el nombre de máquina «%s» del servicio "
-"«%s»!\n"
+"¡No se encontraron direcciones para el nombre de máquina «%s» del servicio «%"
+"s»!\n"
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr "¡Servicio «%s» configurado para IPv4, pero IPv4 está deshabilitado!\n"
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
"¡No se encontraron direcciones IP para el nombre de máquina «%s» del "
"servicio «%s»!\n"
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
"Este sistema no soporta IPv4, se deshabilitarán las funciones IPv4 aunque "
"estén habilitadas en la configuración\n"
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
"Este sistema no soporta IPv6, se deshabilitarán las funciones IPv6 aunque "
"estén habilitadas en la configuración\n"
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
"No se puede habilitar salida IPv4 pero se deshabilita IPv4 sobre interfaz "
"TUN, se usará ENABLE_IPv4=YES\n"
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
"No se pudo habilitar la salida IPv6 pero se deshabilita IPv6 sobre interfaz "
"TUN, se usará ENABLE_IPv6=YES\n"
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, fuzzy, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr "«%s» debe ser instalado con SUID, se niega a arrancar\n"
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr "Ningún servicio útil habilitado. Saliendo.\n"
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr "Demonio a ejecutar para obtener un nodo de salida IP para la VPN"
#, c-format
msgid "Failure while resuming unindexing operation `%s': %s\n"
msgstr ""
-"Se produjo un fallo mientras se retomaba la operación de publicación «%s»: "
-"%s\n"
+"Se produjo un fallo mientras se retomaba la operación de publicación «%s»: %"
+"s\n"
#: src/fs/fs_api.c:2332
#, c-format
#, c-format
msgid "Failure while resuming download operation `%s': %s\n"
msgstr ""
-"Se produjo un fallo mientras se retomaba de la operación de descarga «%s»: "
-"%s\n"
+"Se produjo un fallo mientras se retomaba de la operación de descarga «%s»: %"
+"s\n"
#: src/fs/fs_directory.c:213
msgid "MAGIC mismatch. This is not a GNUnet directory.\n"
msgid ""
"Failed to access full directroy contents of `%s' for recursive download\n"
msgstr ""
-"Se produjo un fallo al crear el directorio para la descarga recursiva de "
-"«%s»\n"
+"Se produjo un fallo al crear el directorio para la descarga recursiva de «%"
+"s»\n"
#: src/fs/fs_download.c:534 src/fs/fs_download.c:546
#, c-format
#, c-format
msgid "Failed to create directory for recursive download of `%s'\n"
msgstr ""
-"Se produjo un fallo al crear el directorio para la descarga recursiva de "
-"«%s»\n"
+"Se produjo un fallo al crear el directorio para la descarga recursiva de «%"
+"s»\n"
#: src/fs/fs_download.c:1047
#, c-format
#, c-format
msgid "Failed to write block of %u bytes at offset %llu in file `%s': %s"
msgstr ""
-"Se produjo un fallo al escribir el bloque de %u bytes en el desplazamiento "
-"%llu del fichero «%s»: %s"
+"Se produjo un fallo al escribir el bloque de %u bytes en el desplazamiento %"
+"llu del fichero «%s»: %s"
#: src/fs/fs_download.c:1220
msgid "internal error decoding tree"
msgid "Publishing failed: %s"
msgstr "Publicación fallida: %s"
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Imposible abrir el fichero de configuración '%s'.\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr "No se pudo indexar el fichero «%s»: %s. Se intentará insertar.\n"
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr ""
"expiración del plazo en la petición de inicio de indexado (index-start) al "
"servicio «fs»"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr "se produjo un fallo al calcular el hash"
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr "nombre de fichero demasiado largo"
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
msgid "could not connect to `fs' service"
msgstr "no se pudo conectar con el servicio «fs»"
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr ""
"Se produjo un fallo al obtener los identificadores de fichero para «%s»\n"
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr "La subida recursiva falló en «%s»: %s"
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, c-format
msgid "Recursive upload failed: %s"
msgstr "Subida recursiva fallida: %s"
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr "tiene que ser un fichero de verdad"
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr "# «PUT» en el almacén de datos fallidos"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr "Reservando espacio para %u entradas y %llu bytes para publicación\n"
msgstr "Se produjo un fallo al calcular el hash del fichero."
# Cadena erronea, corregida en SVN.
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, fuzzy, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr "'%' debe ser seguido por un número hexadecimal"
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr "URI KSK mal formada (no debe empezar ni terminar con «+»)"
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
#, fuzzy
msgid "Malformed KSK URI (`++' not allowed)"
msgstr "URI KSK mal formada (no debe empezar ni terminar con «+»)"
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
#, fuzzy
msgid "Malformed KSK URI (quotes not balanced)"
msgstr "URI KSK mal formada (no debe empezar ni terminar con «+»)"
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
#, fuzzy
msgid "Malformed SKS URI (wrong syntax)"
msgstr "URI SKS mal formada"
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
#, fuzzy
msgid "Malformed CHK URI (wrong syntax)"
msgstr "URI CHK mal formada"
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
#, fuzzy
msgid "LOC URI malformed (wrong syntax)"
msgstr "URI SKS mal formada"
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
#, fuzzy
msgid "LOC URI malformed (no CHK)"
msgstr "URI SKS mal formada"
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
#, fuzzy
msgid "LOC URI malformed (missing LOC)"
msgstr "URI SKS mal formada"
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
#, fuzzy
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr "URI SKS mal formada (no se pudo decodificar la clave pública)"
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
#, fuzzy
msgid "LOC URI malformed (could not decode public key)"
msgstr "URI SKS mal formada (no se pudo decodificar la clave pública)"
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
#, fuzzy
msgid "LOC URI malformed (could not find signature)"
msgstr "URI SKS mal formada (no se pudo encontrar la firma)"
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
#, fuzzy
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr "URI SKS mal formada (no se pudo encontrar la firma)"
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
#, fuzzy
msgid "LOC URI malformed (could not decode signature)"
msgstr "URI SKS mal formada (no se pudo decodificar la firma)"
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
#, fuzzy
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr "URI SKS mal formada (no se encuentra el tiempo de expiración)"
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
#, fuzzy
msgid "LOC URI malformed (could not parse expiration time)"
msgstr "URI SKS mal formada (no se encuentra el tiempo de expiración)"
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
#, fuzzy
msgid "LOC URI malformed (signature failed validation)"
msgstr "URI SKS mal formada (se produjo un fallo al validar la firma)"
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "Parámetro no válido «%s»\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr "Tipo de URI no reconocido"
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr "¡Ninguna palabra clave especificada!\n"
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr "¡Número de comillas dobles no balanceado!\n"
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, c-format
msgid "Failed to load state: %s\n"
msgstr "Se produjo un fallo al cargar el estado: %s\n"
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, c-format
msgid "Failed to save state to file %s\n"
msgstr "Se produjo un fallo al guardar el estado en el fichero %s\n"
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr "Publicación de «%s» finalizada\n"
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, c-format
msgid "Publishing `%s'\n"
msgstr "Publicando «%s»\n"
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, c-format
msgid "Failed to run `%s'\n"
msgstr "Se produjo un fallo al ejecutar «%s»\n"
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
"Debes especificar uno y solo un nombre de directorio para publicación "
"automática.\n"
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr "establece el nivel LEVEL deseado de anonimato del emisor"
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
"deshabilitar añadir tiempo de creación a los metadatos del fichero subido"
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr "no usar libextractor para añadir palabras clave o metadatos"
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr "especificar la prioridad del contenido"
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr "establece el nivel LEVEL deseado de replicación"
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr "Publicar automáticamente ficheros de un directorio en GNUnet"
msgstr "Finalizada descarga «%s» (%s/s).\n"
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr "Estado inesperado: %d\n"
msgstr "El nombre de fichero de destino debe ser especificado.\n"
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr "No se pudo inicializar el subsistema «%s».\n"
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr "establece el nivel LEVEL deseado de anonimato del receptor"
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr "borra descargas incompletas (cuando fueron abortadas con CTRL-C="
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr "únicamente buscar en el par local (no buscar en la red P2P)"
"Descargar ficheros de GNUnet usando una URI GNUnet CHK o LOC (gnunet://fs/"
"chk/...)"
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr "imprimir una lista de todos los ficheros indexados"
-
-#: src/fs/gnunet-fs.c:130
-msgid "Special file-sharing operations"
-msgstr "Operaciones especiales de compartición de ficheros"
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr "ejecuta el experimento con «COUNT» pares"
"ejecuta una batería de pruebas para medir el rendimiento de la compartición "
"de ficheros"
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr "imprimir una lista de todos los ficheros indexados"
+
+#: src/fs/gnunet-fs.c:130
+msgid "Special file-sharing operations"
+msgstr "Operaciones especiales de compartición de ficheros"
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "Error interno escaneando directorio.\n"
#: src/fs/gnunet-publish.c:715
msgstr "La opción «%s» es obligatoria cuando se usa la opción «%s».\n"
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "La opción «%s» no tiene sentido sin la opción «%s».\n"
-#: src/fs/gnunet-publish.c:911
-#, fuzzy
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-"deshabilitar añadir tiempo de creación a los metadatos del fichero subido"
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, c-format
msgid "Error searching: %s.\n"
msgstr "Error buscando: %s.\n"
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
msgid "Could not create keyword URI from arguments.\n"
msgstr "No se pudo crear URI de palabra clave a partir de los parámetros.\n"
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
msgid "Could not start searching.\n"
msgstr "No se pudo empezar a buscar.\n"
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr "escribir resultados de búsqueda al fichero que empiecen por «PREFIX»"
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr "terminar búsqueda automáticamente después de «DELAY»"
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr "terminar búsqueda después de «VALUE» resultados encontrados"
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr "Buscar en GNUnet ficheros que han sido publicados en GNUnet"
"Al servicio principal le falta la configuración de la clave de máquina "
"(HOSTKEY). Saliendo.\n"
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Se produjo un fallo al conectar con el servicio «%s».\n"
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
#, fuzzy
msgid "# replies received via cadet"
msgstr "# respuestas recibidas vía «stream»"
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
#, fuzzy
msgid "# replies received via cadet dropped"
msgstr "# respuestas recibidas omitidas vía «stream»"
#, c-format
msgid "Could not access indexed file `%s' (%s) at offset %llu: %s\n"
msgstr ""
-"No se pudo acceder al fichero indexado «%s» (%s) en el desplazamiento %llu: "
-"%s\n"
+"No se pudo acceder al fichero indexado «%s» (%s) en el desplazamiento %llu: %"
+"s\n"
#: src/fs/gnunet-service-fs_indexing.c:361
msgid "not indexed"
msgid "# query plan entries"
msgstr "# entradas de planes de búsqueda"
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
msgid "# Pending requests created"
msgstr "# Peticiones pendientes creadas"
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
msgid "# Pending requests active"
msgstr "# Peticiones pendientes activas"
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
msgid "# replies received and matched"
msgstr "# respuestas recibidas y asociadas"
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr "# respuestas duplicadas descartadas (bloomfilter)"
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr "# respuestas irrelevantes descartadas"
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr "Tipo de bloque %u no soportado\n"
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr "# resultados hallados localmente"
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr "# «PUT» en el almacén de datos fallidos"
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
msgid "# storage requests dropped due to high load"
msgstr "# peticiones de almacenamiento omitidas debido a alta carga"
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
msgid "# Replies received from DHT"
msgstr "# Respuestas recibidas de la DHT"
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
#, fuzzy
msgid "# Replies received from CADET"
msgstr "# Respuestas recibidas de la DHT"
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr "¡La búsqueda en el almacén de datos toma %s!\n"
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr "¡La búsqueda en bajo demanda toma %s!\n"
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr "# «DBLOCK» o «IBLOCK» pedido no encontrado"
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr "# Búsquedas en el almacén de datos finalizadas (error encolando)"
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr "# Búsquedas en el almacén de datos finalizadas (sin resultados)"
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr "# Búsquedas en el almacén de datos finalizadas (vistos todos)"
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr "# Búsquedas en el almacén de datos finalizadas (más de «MAX_RESULTS»)"
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr "# peticiones asociadas de bloques bajo demanda"
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr "# búsquedas satisfactorias de bloques bajo demanda"
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr "# búsquedas fallidas de bloques bajo demanda"
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
"# Búsquedas en el almacén de datos finalizadas (encontrado último resultado)"
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr "# Búsquedas en el almacén de datos finalizadas (carga demasiado alta)"
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr "# Búsquedas en el almacén de datos iniciadas"
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
msgid "# GAP PUT messages received"
msgstr "# Mensajes «GAP PUT» recibidos"
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr "Desindexa un fichero previamente indexado con «gnunet-publish»."
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr ""
"¡Se produjo un fallo al empaquetar una respuesta DNS en un paquete UDP!\n"
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr "No se puede procesar la petición DNS de %s\n"
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, c-format
msgid "Received malformed DNS request from %s\n"
msgstr "Recibida petición DNS mal formada de %s\n"
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr "Recibida petición DNS no soportada de %s\n"
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
#, fuzzy
msgid "No DNS server specified!\n"
msgstr "¡Ninguna palabra clave especificada!\n"
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr "IP del resolvedor recursivo DNS a usar (requerido)"
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
#, fuzzy
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
"Puerto UDP en el que escuchar para peticiones DNS entrantes; predeterminado: "
"53"
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr "Pasarela GNUnet DNS-a-GNS (un servidor DNS)"
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "«%s» no es una dirección IP válida.\n"
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr "Buscar el registro para el nombre dado"
-
-#: src/gns/gnunet-gns.c:266
-msgid "Specify the type of the record to lookup"
-msgstr "Especificar el tipo del registro a buscar"
-
-#: src/gns/gnunet-gns.c:272
-#, fuzzy
-msgid "Specify a timeout for the lookup"
-msgstr "Especificar el tipo del registro a buscar"
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr "Sin salida innecesaria"
-
-#: src/gns/gnunet-gns.c:288
-#, fuzzy
-msgid "GNUnet GNS resolver tool"
-msgstr "Herramienta de acceso GNUnet GNS"
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr "%s falló en %s:%d: «%s».\n"
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, fuzzy, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr "Tipo de bloque %u no soportado\n"
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, fuzzy, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr "Se produjo un fallo al mandar la petición DNS a %s\n"
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, fuzzy, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr "¡No se puede inicializar el resolvedor!\n"
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, fuzzy, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr "Se produjo un fallo al procesar la petición DNS. Omitiendo.\n"
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, fuzzy, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, fuzzy, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr "Tipo no soportado «%s»\n"
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr "No se pudo importar la clave privada del fichero «%s»\n"
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "No se pudo importar el certificado %s\n"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, fuzzy, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr "Se produjo un fallo al iniciar el servidor HTTP\n"
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
#, fuzzy
msgid "Failed to pass client to MHD\n"
msgstr "Se produjo un fallo al conectar con GNS\n"
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, fuzzy, c-format
msgid "Unsupported socks version %d\n"
msgstr "Tipo de bloque %u no soportado\n"
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, fuzzy, c-format
msgid "Unsupported socks command %d\n"
msgstr "Tipo de bloque %u no soportado\n"
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, fuzzy, c-format
msgid "Unsupported socks address type %d\n"
msgstr "Tipo de bloque %u no soportado\n"
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, fuzzy, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr "Se produjo un fallo al leer la lista de amigos de «%s»\n"
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr "escuchar en el puerto especificado (predeterminado: 7777)"
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr "fichero pem para usar como autoridad de certificación (CA)"
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr "Proxy GNUnet GNS"
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr "Buscar el registro para el nombre dado"
+
+#: src/gns/gnunet-gns.c:238
+msgid "Specify the type of the record to lookup"
+msgstr "Especificar el tipo del registro a buscar"
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr "Sin salida innecesaria"
+
+#: src/gns/gnunet-gns.c:258
+#, fuzzy
+msgid "GNUnet GNS resolver tool"
+msgstr "Herramienta de acceso GNUnet GNS"
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr "¡Se produjo un fallo al conectar con el almacén de nombres!\n"
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
msgid "Could not connect to DHT!\n"
msgstr "¡No se pudo conectar a la DHT!\n"
msgid "Unable to parse BOX record string `%s'\n"
msgstr "No se pudo procesar la cadena de registro VPN «%s»\n"
-#: src/gns/plugin_rest_gns.c:442
-#, fuzzy
-msgid "Gns REST API initialized\n"
-msgstr "Conexión fallida\n"
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr "No se pudo procesar la dirección IPv4 «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, fuzzy, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, fuzzy, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, fuzzy, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr "No se pudo procesar el registro SOA «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, fuzzy, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr "Se produjo un fallo al crear un registro para el dominio «%s»: %s\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, fuzzy, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr "No se pudo procesar el registro MX «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, fuzzy, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "No se pudo procesar el registro SOA «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr ""
"Se produjo un fallo al escribir el directorio con los resultados de búsqueda "
"de «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr "No se pudo procesar dirección IPv4 «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr "No se pudo procesar la cadena de registro TLSA «%s»\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "No se pudo procesar la cadena de registro VPN «%s»\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr "Llamar con el nombre del fichero «HELLO» para modificar.\n"
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr ""
"Se produjo un fallo al procesar un mensaje «HELLO»: falta el tiempo de "
"expiración\n"
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr ""
"Se produjo un fallo al procesar un mensaje «HELLO»: tiempo de expiración no "
"válido\n"
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
msgid "Failed to parse HELLO message: malformed\n"
msgstr "Se produjo un fallo al procesar un mensaje «HELLO»: mal formado\n"
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr ""
"Se produjo un fallo al procesar un mensaje «HELLO»: falta el módulo de "
"transporte\n"
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, fuzzy, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr "Módulo «%s» no encontrado\n"
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr "El módulo «%s» no soporta URI todavía\n"
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr ""
"Se produjo un fallo al procesar «%s» como una dirección para el módulo «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
"Ninguna de las funciones para el demonio de listas de máquinas fue "
"activada. ¡No tengo razón para ejecutarme!\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr "anuncia nuestra lista de máquinas a otros pares"
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
"realizar inicialización usando listas de máquinas (es altamente recomendable "
"que siempre se use esta opción)"
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
"habilitar aprendizaje de servidores de listas de máquinas de otros pares"
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr "proveer un servidor de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr "Servidor y cliente GNUnet de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr "# bytes descargados de servidores de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr "# «HELLO» no válidos descargados de servidores de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr "Mensaje «%s» no válido recibido de la lista de máquinas en «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr "# «HELLO» válidos descargados de servidores de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr "# URI de listas de máquinas anunciadas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr "# URI anunciadas «%s» descargadas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"Lista de máquinas anunciada con la URI «%s» no pudo ser descargada. La URI "
"anunciada es descartada.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr ""
"Finalizado el plazo mientras se intentaba bajar lista de máquinas de «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr "Límite de descarga de %u bytes superado, parando descarga\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr "Descarga de lista de máquinas de «%s» fallida: «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr "Descarga de lista de máquinas «%s» completada.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr "Añadiendo el almacén de datos de la lista de máquinas probada «%s».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr "Inicializando usando lista de máquinas en «%s».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr "# descargas de listas de máquinas iniciadas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr "# milisegundos entre descargas de listas de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
"Hay %u/%u conexiones. Se considerará descargar una lista de máquinas en %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
msgid "# active connections"
msgstr "# conexiones activas"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr "Cargando entradas guardadas de listas de máquinas del fichero «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr "El fichero de listas de máquinas «%s» no existe\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr ""
"No se pudo abrir el fichero «%s» en modo lectura para cargar las listas de "
"máquinas: %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr "%u URI de listas de máquinas cargadas del fichero\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr "# URI de listas de máquinas leídas de fichero"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr ""
"No se pudo abrir el fichero «%s» en modo escritura para almacenar las listas "
"de máquinas: %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr "Escribiendo %u URI de listas de máquinas a «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr "Error escribiendo URI de listas de máquinas al fichero «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr "# URI de listas de máquinas escritas a fichero"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr "El aprendizaje está habilitado en este par\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr "El aprendizaje no está habilitado en este par\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
"La lista de máquinas «%s» fue eliminada puesto que el aprendizaje no está "
"habilitado en este par\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
msgid "bytes in hostlist"
msgstr "bytes en la lista de máquinas"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr "direcciones expiradas encontradas"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr ""
"Error en la comunicación con el servicio de información de pares (PEERINFO): "
"%s\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr "«HELLO» sin dirección encontrados (ignorados)"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr "bytes no incluidos en la lista de máquinas (límite de tamaño)"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr "Rechazando petición «%s» al servidor de listas de máquinas\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr "Peticiones de listas de máquinas rechazadas (no HTTP GET)"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr "Rechazando petición «%s» con %llu bytes de datos de subida\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr "Peticiones de listas de máquinas rechazadas (datos de subida)"
msgid "hostlist requests refused (not ready)"
msgstr "Peticiones de listas de máquinas rechazadas (no preparados)"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr "Peticiones recibidas de nuestra lista de máquinas\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
msgid "hostlist requests processed"
msgstr "Peticiones de lista de máquinas procesadas"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
msgid "# hostlist advertisements send"
msgstr "# anuncios de listas de máquinas enviados"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr ""
"No se pudo acceder al servicio de información de pares (PEERINFO). "
"Saliendo.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr "Número de puerto %llu no válido. Saliendo.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr "Servicio de listas de máquinas arranca en %s:%llu\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr "Dirección para obtener la lista de máquinas: «%s»\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "¡«%s» no es una dirección IP válida! Ignorando «BINDTOIP».\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr "¡«%s» no es una dirección IP válida! Ignorando «BINDTOIP».\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "¡«%s» no es una dirección IP válida! Ignorando «BINDTOIP».\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "¡«%s» no es una dirección IP válida! Ignorando «BINDTOIP».\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
"No se pudo arrancar un servidor de listas de máquinas HTTP en el puerto %u\n"
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, fuzzy, c-format
msgid "Failed to create ego: %s\n"
msgstr "Se produjo un fallo al crear la página para «%s»\n"
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, fuzzy, c-format
msgid "Failed to set default ego: %s\n"
msgstr "Se produjo un fallo al crear la página para «%s»\n"
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
#, fuzzy
msgid "delete ego NAME "
msgstr "borrar un nombre de espacio de nombres (NAME)"
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
#, fuzzy
msgid "display all egos"
msgstr "mostrar registros"
-#: src/identity/gnunet-identity.c:404
-#, fuzzy
-msgid "reduce output"
-msgstr "Sin salida innecesaria"
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
# Miguel: Aquí he dejado monitorización porque esto es
# del servicio de traducción de direcciones.
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
#, fuzzy
msgid "run in monitor mode egos"
msgstr "modo de monitorización"
-#: src/identity/gnunet-identity.c:419
-msgid "display private keys as well"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, fuzzy, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr ""
"Se produjo un fallo al obtener los identificadores de fichero para «%s»\n"
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
#, fuzzy
msgid "target name already exists"
msgstr "El registro ya existía en el almacén de nombres"
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, fuzzy, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr "Se produjo un fallo al procesar la identidad del par «%s»\n"
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, fuzzy, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, fuzzy, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr "Se produjo un fallo al leer el directorio «%s»\n"
-#: src/identity/plugin_rest_identity.c:1311
-#, fuzzy
-msgid "Identity REST API initialized\n"
-msgstr "Conexión fallida\n"
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, fuzzy, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr "«%s» falló en %s: %d con el error: %s\n"
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr "Intentando usar el fichero «%s» para la configuración de MySQL.\n"
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, c-format
msgid "Could not access file `%s': %s\n"
msgstr "No se pudo acceder al fichero «%s»: %s\n"
msgid "No records found for `%s'"
msgstr "No se han encontrado ficheros en «%s»\n"
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr "\tRegistro corrupto o no soportado del tipo %u\n"
msgid "You must specify a name\n"
msgstr "¡Debes especificar un receptor!\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr "nombre del registro a añadir/borrar/mostrar"
#: src/namecache/gnunet-namecache.c:238
#, fuzzy
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr "Especificar el tipo del registro a buscar"
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
msgid "GNUnet zone manipulation tool"
msgstr "Herramienta de manipulación de zona de GNUnet"
msgid "Error communicating with namecache service"
msgstr "Error al comunicar con el servicio ARM.\n"
-#: src/namecache/plugin_namecache_flat.c:121
-#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
-#: src/peerstore/plugin_peerstore_flat.c:379
-#: src/peerstore/plugin_peerstore_flat.c:538
-#, fuzzy, c-format
-msgid "Unable to initialize file: %s.\n"
-msgstr "Imposible inicializar SQLite: %s.\n"
+#: src/namecache/plugin_namecache_flat.c:121
+#: src/namecache/plugin_namecache_flat.c:255
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
+#: src/peerstore/plugin_peerstore_flat.c:379
+#: src/peerstore/plugin_peerstore_flat.c:538
+#, fuzzy, c-format
+msgid "Unable to initialize file: %s.\n"
+msgstr "Imposible inicializar SQLite: %s.\n"
+
+#: src/namecache/plugin_namecache_flat.c:132
+#: src/namestore/plugin_namestore_heap.c:159
+#: src/peerstore/plugin_peerstore_flat.c:394
+#, fuzzy, c-format
+msgid "Unable to get filesize: %s.\n"
+msgstr "Se produjo un fallo al crear los índices\n"
+
+#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
+#: src/peerstore/plugin_peerstore_flat.c:406
+#, fuzzy, c-format
+msgid "Unable to read file: %s.\n"
+msgstr "Se produjo un fallo al crear los índices\n"
+
+#: src/namecache/plugin_namecache_flat.c:410
+#, fuzzy
+msgid "flat plugin running\n"
+msgstr "Base de datos sqlite ejecutándose\n"
+
+#: src/namecache/plugin_namecache_sqlite.c:183
+#: src/namecache/plugin_namecache_sqlite.c:197
+#: src/namestore/plugin_namestore_sqlite.c:219
+#: src/namestore/plugin_namestore_sqlite.c:230
+#, fuzzy, c-format
+msgid "Failed to setup database at `%s'\n"
+msgstr "Se produjo un fallo al inciar «%s» en «%s»\n"
+
+# form??
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr "Forma de valor no soportada «%s»\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr "Se produjo un fallo al crear un registro para el dominio «%s»: %s\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr "Encontrado nombre «%s» para la clave dada\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr "Encontrados %u registros para el dominio «%s»\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr "Se produjo un fallo al crear la página para «%s»\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr "Se produjo un fallo al configurar el post-procesador para «%s»\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr "El nombre de dominio no puede contener «.»\n"
-#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
-#: src/peerstore/plugin_peerstore_flat.c:394
-#, fuzzy, c-format
-msgid "Unable to get filesize: %s.\n"
-msgstr "Se produjo un fallo al crear los índices\n"
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr "El nombre de dominio no puede contener «+»\n"
-#: src/namecache/plugin_namecache_flat.c:151
-#: src/peerstore/plugin_peerstore_flat.c:406
-#, fuzzy, c-format
-msgid "Unable to read file: %s.\n"
-msgstr "Se produjo un fallo al crear los índices\n"
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
-#: src/namecache/plugin_namecache_flat.c:410
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
+msgid "Failed to start HTTP server\n"
+msgstr "Se produjo un fallo al iniciar el servidor HTTP\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
#, fuzzy
-msgid "flat plugin running\n"
-msgstr "Base de datos sqlite ejecutándose\n"
+msgid "Failed to connect to identity\n"
+msgstr "Se produjo un fallo al conectar con GNS\n"
-#: src/namecache/plugin_namecache_sqlite.c:183
-#: src/namecache/plugin_namecache_sqlite.c:197
-#: src/namestore/plugin_namestore_sqlite.c:219
-#: src/namestore/plugin_namestore_sqlite.c:230
-#, fuzzy, c-format
-msgid "Failed to setup database at `%s'\n"
-msgstr "Se produjo un fallo al inciar «%s» en «%s»\n"
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+#, fuzzy
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr "Servicio de registro GNUnet GNS primero en llegar, primero en servirse"
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore.c:341
#, c-format
msgid "Adding record failed: %s\n"
msgstr "No se pudo añadir el registro: %s\n"
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, fuzzy, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr "No se pudo borrar el registro: %s\n"
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, fuzzy, c-format
msgid "Deleting record failed%s%s\n"
msgstr "No se pudo borrar el registro: %s\n"
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Se produjo un fallo al procesar la petición DNS. Omitiendo.\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr "No se han proporcionado opciones\n"
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr "Falta la opción «%s» para la operación «%s»\n"
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr "añadir"
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, c-format
msgid "Unsupported type `%s'\n"
msgstr "Tipo no soportado «%s»\n"
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr "Valor «%s» no válido para el tipo de registro «%s»\n"
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, c-format
msgid "Invalid time format `%s'\n"
msgstr "Formato de tiempo no válido «%s»\n"
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr "borrar"
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, fuzzy, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr "Parámetro no válido «%s»\n"
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, c-format
msgid "Invalid URI `%s'\n"
msgstr "URI no válida: «%s»\n"
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, fuzzy, c-format
msgid "Invalid nick `%s'\n"
msgstr "URI no válida: «%s»\n"
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, fuzzy, c-format
msgid "No default ego configured in identity service\n"
msgstr "'%s': servicio desconocido: %s\n"
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, fuzzy, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr "Argumentos superfluos (ignorados).\n"
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, fuzzy, c-format
msgid "Cannot connect to identity service\n"
msgstr "¡No se pudo conectar al servicio %s!\n"
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, fuzzy, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr "Se produjo un fallo al cargar el módulo del transporte para «%s»\n"
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Comando desconocido «%s»\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "Formato no válido para la IP: «%s»\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr "añadir registro"
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr "borrar registro"
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr "mostrar registros"
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
"tiempo de expiración del registro a usar (únicamente para añadir), nunca "
"(\"never\") es posible"
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
#, fuzzy
msgid "set the desired nick name for the zone"
msgstr "establece el nivel LEVEL deseado de replicación"
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
#, fuzzy
msgid "monitor changes in the namestore"
msgstr "¡Se produjo un fallo al conectar con el almacén de nombres!\n"
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
#, fuzzy
msgid "determine our name for the given PKEY"
msgstr "establece las preferencias para el par dado"
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr "tipo del registro a añadir/borrar/mostrar"
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr "URI a importar a nuestra zona"
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr "valor del registro a añadir/borrar"
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr "crear o listar registros públicos"
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
#, fuzzy
msgid "name of the ego controlling the zone"
msgstr "nombre de la sección a la que acceder"
-# form??
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr "Forma de valor no soportada «%s»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr "Se produjo un fallo al crear un registro para el dominio «%s»: %s\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr "Encontrado nombre «%s» para la clave dada\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr "Encontrados %u registros para el dominio «%s»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr "Se produjo un fallo al crear la página para «%s»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr "Se produjo un fallo al configurar el post-procesador para «%s»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr "El nombre de dominio no puede contener «.»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr "El nombre de dominio no puede contener «+»\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-msgid "Failed to start HTTP server\n"
-msgstr "Se produjo un fallo al iniciar el servidor HTTP\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-#, fuzzy
-msgid "Failed to connect to identity\n"
-msgstr "Se produjo un fallo al conectar con GNS\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-#, fuzzy
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr "Servicio de registro GNUnet GNS primero en llegar, primero en servirse"
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, fuzzy, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr "Se produjo un fallo al crear el espacio de nombres «%s»\n"
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
#, fuzzy
msgid "Namestore failed to store record\n"
msgstr "El almacén de nombres no pudo añadir el registro\n"
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
+#: src/namestore/plugin_namestore_heap.c:778
#, fuzzy
-msgid "Flat file database running\n"
+msgid "heap file database running\n"
msgstr "Base de datos de plantilla ejecutándose\n"
-#: src/namestore/plugin_rest_namestore.c:919
-#, fuzzy
-msgid "Namestore REST API initialized\n"
-msgstr "Conexión fallida\n"
-
#: src/nat-auto/gnunet-nat-auto.c:193
#, fuzzy
msgid "Suggested configuration changes:\n"
msgstr "Demonio de ayuda en las pruebas de recorrido NAT de GNUnet"
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
msgid "Failed to connect to `gnunet-nat-server'\n"
msgstr "Se produjo un fallo al conectar con «gnunet-nat-server»\n"
msgid "Detected external IP `%s'\n"
msgstr "Detectada IP externa «%s»\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
"Este sistema tiene una dirección IPv6 global, fijando IPv6 a habilitado.\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, c-format
msgid "Detected internal network address `%s'.\n"
msgstr "Detectada dirección de la red interna «%s».\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr "«upnpc» encontrado, habilitando su uso\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
msgid "upnpc not found\n"
msgstr "«upnpc» no encontrado\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr "No se ha encontrado un «gnunet-helper-nat-server» funcional\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr "Demonio de ayuda en las pruebas de recorrido NAT de GNUnet"
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, fuzzy, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
"Puerto inválido \"%s\" en la especificación de la lista local, probando el "
"puerto %d.\n"
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
#, fuzzy
msgid "Connection reversal request failed\n"
msgstr "Colección detenida.\n"
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr "«gnunet-helper-nat-server» generó la dirección mal formada «%s»\n"
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, c-format
msgid "Failed to start %s\n"
msgstr "Se produjo un fallo al arrancar %s\n"
msgid "`upnpc' command not found\n"
msgstr "comando «upnpc» no encontrado\n"
-#: src/nse/gnunet-nse.c:123
-#, fuzzy
-msgid "Show network size estimates from NSE service."
-msgstr "# Estimaciones del tamaño de red recibidas"
-
#: src/nse/gnunet-nse-profiler.c:849
msgid "limit to the number of connections to NSE services, 0 for none"
msgstr "límite al número de conexiones a servicios NSE, 0 para ilimitadas"
msgid "Measure quality and performance of the NSE service."
msgstr "Medir la calidad y rendimiento del servicio NSE."
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
-msgid "Value is too large.\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, c-format
-msgid "Removing expired address of transport `%s'\n"
-msgstr "Eliminando dirección de transporte «%s»\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:313
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
-msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr "# pares conocidos"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:492
-#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
-msgstr ""
-"El fichero «%s» en el directorio «%s» no sigue la convención de nombres. "
-"Eliminado.\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:658
-#, fuzzy, c-format
-msgid "Scanning directory `%s'\n"
-msgstr "Escaneando directorio «%s».\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:666
-#, c-format
-msgid "Still no peers found in `%s'!\n"
-msgstr "¡Aún no se han encontrado pares en «%s»!\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
-#, fuzzy, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr "Escaneando directorio «%s».\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr "Importando HELLO de «%s»\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
-msgstr ""
+#: src/nse/gnunet-nse.c:122
+#, fuzzy
+msgid "Show network size estimates from NSE service."
+msgstr "# Estimaciones del tamaño de red recibidas"
-# Miguel: "Failed to receive" también aquí está traducido como
-# "no se obtuvo respuesta" por claridad.
-#: src/peerinfo/peerinfo_api.c:220
-msgid "Failed to receive response from `PEERINFO' service."
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
+msgid "Value is too large.\n"
msgstr ""
-"No se obtuvo respuesta del servicio de información de pares (PEERINFO)."
#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, fuzzy, c-format
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, fuzzy, c-format
msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr "Se produjo un fallo al resolver la dirección para el par «%s»\n"
msgid "Starting transport plugins `%s'\n"
msgstr "Iniciando los módulos de transporte «%s»\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
-#: src/transport/gnunet-service-transport_plugins.c:173
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
+#: src/transport/gnunet-service-transport_plugins.c:173
+#, c-format
+msgid "Loading `%s' transport plugin\n"
+msgstr "Cargando el módulo de transporte «%s»\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
+#: src/transport/gnunet-service-transport_plugins.c:208
+#, c-format
+msgid "Failed to load transport plugin for `%s'\n"
+msgstr "Se produjo un fallo al cargar el módulo del transporte para «%s»\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr "Eliminando dirección de transporte «%s»\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr "Se produjo un fallo al procesar «HELLO» en el fichero «%s»\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
+msgstr "# pares conocidos"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgstr ""
+"El fichero «%s» en el directorio «%s» no sigue la convención de nombres. "
+"Eliminado.\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, fuzzy, c-format
+msgid "Scanning directory `%s'\n"
+msgstr "Escaneando directorio «%s».\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:667
+#, c-format
+msgid "Still no peers found in `%s'!\n"
+msgstr "¡Aún no se han encontrado pares en «%s»!\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
+#, fuzzy, c-format
+msgid "Cleaning up directory `%s'\n"
+msgstr "Escaneando directorio «%s».\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
#, c-format
-msgid "Loading `%s' transport plugin\n"
-msgstr "Cargando el módulo de transporte «%s»\n"
+msgid "Importing HELLOs from `%s'\n"
+msgstr "Importando HELLO de «%s»\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
-#: src/transport/gnunet-service-transport_plugins.c:208
-#, c-format
-msgid "Failed to load transport plugin for `%s'\n"
-msgstr "Se produjo un fallo al cargar el módulo del transporte para «%s»\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
-#, fuzzy
-msgid "Peerinfo REST API initialized\n"
-msgstr "Conexión fallida\n"
+# Miguel: "Failed to receive" también aquí está traducido como
+# "no se obtuvo respuesta" por claridad.
+#: src/peerinfo/peerinfo_api.c:220
+msgid "Failed to receive response from `PEERINFO' service."
+msgstr ""
+"No se obtuvo respuesta del servicio de información de pares (PEERINFO)."
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "No se pudo leer el fichero de la lista negra «%s»\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
#, fuzzy
msgid "Unexpected iteration response, this should not happen.\n"
msgstr "El formato de salida es desconocido, ésto no debería pasar.\n"
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
#, fuzzy
msgid "Received a malformed response from service."
msgstr "Recibida petición DNS mal formada de %s\n"
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, fuzzy, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr "Error abriendo fichero «%s»: %s\n"
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, fuzzy, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr "«%s» para «%s» falló en %s: %d con error: %s\n"
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Se produjo un fallo al retomar la operación de publicación «%s»: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "¡Se produjo un fallo al configurar el túnel mesh!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "Parámetro no válido «%s»\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Se produjo un fallo al iniciar el demonio: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Se produjo un fallo al procesar un mensaje «HELLO»: mal formado\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Se produjo un fallo al cargar el estado: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Se produjo un fallo al cargar el estado: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Se produjo un fallo al cargar el estado: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "Imposible inicializar SQLite: %s.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Se produjo un fallo al preparar la sentencia «%s»\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, fuzzy, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr "«%s» falló en %s: %d con el error: %s\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+#, fuzzy
+msgid "SQLite database running\n"
+msgstr "Base de datos sqlite ejecutándose\n"
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr "Se produjo un fallo al empaquetar la petición DNS. Omitiendo.\n"
msgid "# DNS replies dropped (too late?)"
msgstr "# Respuestas DNS (¿demasiado tarde?)"
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr "Se produjo un fallo al conectar con el servicio %s. Saliendo.\n"
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
"Demonio a ejecutar para realizar la traducción de protocolo IP a GNUnet"
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, fuzzy, c-format
msgid "Ego is required\n"
msgstr "Las opción «%s» o «%s» es necesaria.\n"
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, fuzzy, c-format
msgid "Requesting party key is required!\n"
msgstr "el parámetro --section es necesario\n"
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-#, fuzzy
-msgid "The EGO to use"
-msgstr "tamaño del mensaje"
-
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-#, fuzzy
-msgid "OpenID Connect REST API initialized\n"
-msgstr "Conexión fallida\n"
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-#, fuzzy
-msgid "Identity Provider REST API initialized\n"
-msgstr "Conexión fallida\n"
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "El almacén de nombres no pudo añadir el registro\n"
msgid "Search string `%s' is too long!\n"
msgstr "El servicio «%s» no está ejecutandose\n"
-#: src/rest/gnunet-rest-server.c:1039
+#: src/rest-plugins/plugin_rest_copying.c:209
#, fuzzy
-msgid "GNUnet REST server"
-msgstr "Herramienta de acceso GNUnet GNS"
+msgid "COPYING REST API initialized\n"
+msgstr "Conexión fallida\n"
-#: src/rest/plugin_rest_config.c:265
+#: src/rest-plugins/plugin_rest_credential.c:1128
#, fuzzy
-msgid "CONFIG REST API initialized\n"
+msgid "GNS REST API initialized\n"
msgstr "Conexión fallida\n"
-#: src/rest/plugin_rest_copying.c:209
+#: src/rest-plugins/plugin_rest_gns.c:452
#, fuzzy
-msgid "COPYING REST API initialized\n"
+msgid "Gns REST API initialized\n"
+msgstr "Conexión fallida\n"
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+#, fuzzy
+msgid "Identity REST API initialized\n"
+msgstr "Conexión fallida\n"
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+#, fuzzy
+msgid "Namestore REST API initialized\n"
+msgstr "Conexión fallida\n"
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+#, fuzzy
+msgid "Identity Provider REST API initialized\n"
+msgstr "Conexión fallida\n"
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+#, fuzzy
+msgid "Peerinfo REST API initialized\n"
msgstr "Conexión fallida\n"
+#: src/rest/gnunet-rest-server.c:927
+#, fuzzy
+msgid "listen on specified port (default: 7776)"
+msgstr "escuchar en el puerto especificado (predeterminado: 7777)"
+
+#: src/rest/gnunet-rest-server.c:944
+#, fuzzy
+msgid "GNUnet REST server"
+msgstr "Herramienta de acceso GNUnet GNS"
+
#: src/revocation/gnunet-revocation.c:129
#, fuzzy, c-format
msgid "Key `%s' is valid\n"
msgid "Ego `%s' not found.\n"
msgstr "Módulo «%s» no encontrado\n"
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, fuzzy, c-format
msgid "Public key `%s' malformed\n"
msgstr "El bloque del tipo %u está mal formado\n"
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
#, fuzzy
msgid "No filename to store revocation certificate given.\n"
msgstr "Se produjo un fallo al leer la lista de amigos de «%s»\n"
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, fuzzy, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr "Se produjo un fallo al leer la lista de amigos de «%s»\n"
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
#, fuzzy
msgid "No action specified. Nothing to do.\n"
msgstr "Ninguna interfaz especificada, usando la marcada por defecto\n"
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
#, fuzzy
msgid "Could not open revocation database file!"
msgstr "No se pudo conectar con el almacén de datos."
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
#, fuzzy
msgid "duration of the profiling"
msgstr ""
"La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%s'!\n"
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
#, fuzzy
msgid "timeout for the profiling"
msgstr "Especificar el tipo del registro a buscar"
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "número de pares para empezar"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
#, fuzzy
msgid "Measure quality and performance of the RPS service."
msgstr "Medir la calidad y rendimiento del servicio NSE."
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
#, fuzzy
msgid "You must specify at least one message ID to check!\n"
msgid "Calculate the Vectorproduct with a GNUnet peer."
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
#, fuzzy
msgid "Connect to CADET failed\n"
msgstr "Conexión fallida (¿bug?)\n"
msgid "also profile decryption"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
+#: src/set/gnunet-service-set.c:2005
#, fuzzy
msgid "Could not connect to CADET service\n"
msgstr "¡No se pudo conectar al servicio %s!\n"
# Miguel: Conjunto resta.
-#: src/set/gnunet-set-ibf-profiler.c:267
+#: src/set/gnunet-set-ibf-profiler.c:252
msgid "number of element in set A-B"
msgstr "número de elementos en el conjunto A-B"
-#: src/set/gnunet-set-ibf-profiler.c:273
+#: src/set/gnunet-set-ibf-profiler.c:258
msgid "number of element in set B-A"
msgstr "número de elementos en el conjunto B-A"
# Miguel: Conjunto unión.
-#: src/set/gnunet-set-ibf-profiler.c:280
+#: src/set/gnunet-set-ibf-profiler.c:264
msgid "number of common elements in A and B"
msgstr "número de elementos comunes en A y B"
# Miguel: "hash" me tiene un poco frito. ¿Existe alguna traducción buena?
-#: src/set/gnunet-set-ibf-profiler.c:286
+#: src/set/gnunet-set-ibf-profiler.c:270
msgid "hash num"
msgstr "número de hash"
-#: src/set/gnunet-set-ibf-profiler.c:292
+#: src/set/gnunet-set-ibf-profiler.c:276
msgid "ibf size"
msgstr "tamaño ibf"
msgid "element size"
msgstr ""
+#: src/social/gnunet-social.c:1166
+#, fuzzy
+msgid "--place missing or invalid.\n"
+msgstr "Parámetro no válido «%s»\n"
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
+msgstr ""
+
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
+msgstr ""
+
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
+msgstr ""
+
+#: src/social/gnunet-social.c:1304
+#, fuzzy
+msgid "name or public key of ego"
+msgstr "Parámetro no válido «%s»\n"
+
+#: src/social/gnunet-social.c:1309
+#, fuzzy
+msgid "wait for incoming messages"
+msgstr "Falló al entregar el mensaje '%s'.\n"
+
+#: src/social/gnunet-social.c:1315
+#, fuzzy
+msgid "GNS name"
+msgstr "Mostrar el _nombre"
+
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
+msgstr ""
+
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
+msgstr ""
+
+#: src/social/gnunet-social.c:1333
+#, fuzzy
+msgid "method name"
+msgstr "Mostrar el _nombre"
+
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "número de mensajes a usar por iteración"
+
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
+msgstr ""
+
#: src/sq/sq.c:54
#, c-format
msgid "Failure to bind %u-th SQL parameter\n"
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr "Cargando %llu bytes de estadísticas de «%s»\n"
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
msgid "Failed to obtain statistics.\n"
msgstr "Se produjo un fallo al obtener las estadísticas.\n"
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr ""
"Se produjo un fallo al obtener las estadísticas de la máquina «%s:%llu»\n"
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr "Falta el parámetro: subsistema\n"
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr "Falta el argumento: nombre\n"
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr "No se proporcionó un subsistema o un nombre\n"
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, c-format
msgid "Failed to initialize watch routine\n"
msgstr "Se produjo un fallo al inicializar la rutina de visualización\n"
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, c-format
msgid "Invalid argument `%s'\n"
msgstr "Parámetro no válido «%s»\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr "Se necesita un puerto para conectar con la máquina «%s»\n"
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr "Un puerto debe estar entre 1 y 65534 para conectar a la máquina «%s»\n"
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr "limita la salida de estadísticas para el nombre (NAME) dado"
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr "hacer el valor persistente"
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr "límite de salida para el subsistema (SUBSYSTEM) dado"
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr "imprime el valor de las estadísticas"
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr "visualiza el valor continuamente"
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr "conectar a equipo remoto"
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr "puerto del equipo remoto"
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr "Imprime estadísticas acerca de las operaciones de GNUnet."
msgstr "Argumento no válido para '%s' en %s:%d.\n"
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr "crea «COUNT» número de pares"
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr "El fichero de máquinas no tiene el formato correcto: %s\n"
msgid "%.s Unknown result code."
msgstr "Código de respuesta del ARM desconocido.\n"
+#: src/testbed/gnunet-testbed-profiler.c:289
+msgid "tolerate COUNT number of continious timeout failures"
+msgstr "tolerar un número «COUNT» de continuas expiraciones de plazo"
+
+#: src/testbed/gnunet-testbed-profiler.c:294
+msgid ""
+"run profiler in non-interactive mode where upon testbed setup the profiler "
+"does not wait for a keystroke but continues to run until a termination "
+"signal is received"
+msgstr ""
+
#: src/testbed/gnunet_testbed_mpi_spawn.c:118
#, fuzzy
msgid "Waiting for child to exit.\n"
msgid "Spawning process `%s'\n"
msgstr "Iniciando el proceso auxiliar (HELPER) «%s»\n"
-#: src/testbed/gnunet-testbed-profiler.c:287
-msgid "tolerate COUNT number of continious timeout failures"
-msgstr "tolerar un número «COUNT» de continuas expiraciones de plazo"
-
-#: src/testbed/gnunet-testbed-profiler.c:291
-msgid ""
-"run profiler in non-interactive mode where upon testbed setup the profiler "
-"does not wait for a keystroke but continues to run until a termination "
-"signal is received"
-msgstr ""
-
-#: src/testbed/testbed_api.c:400
+#: src/testbed/testbed_api.c:410
#, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr "No se pudo añadir la máquina %u por el error: %s\n"
msgid "Hosts file %s cannot be read\n"
msgstr "El archivo de máquinas %s no puede leerse\n"
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
# Miguel: "testbed" lo he traducido como batería de pruebas, pero
# no es una traducción muy literal.
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"Se ha intentado crear una batería de pruebas con más de %u máquinas. Por "
"favor, pre-compute más claves de máquinas primero.\n"
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr ""
"Se produjo un fallo al inicializar la clave de la máquina desde el par %u\n"
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
#, fuzzy
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr "¡Falta la opción «%s» en la sección «%s» de la configuración!\n"
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr ""
"Se produjo un fallo al crear la configuración para el par (¿no hay "
"suficientes puertos libres?)\n"
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, fuzzy, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr "No se pudo abrir el fichero de claves de máquina: %s\n"
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr ""
"Se produjo un fallo al escribir la clave de la máquina para el par %u: %s\n"
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr ""
"Se produjo un fallo al escribir el fichero de configuración «%s» para el par "
"%u: %s\n"
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, c-format
msgid "Failed to start `%s': %s\n"
msgstr "Se produjo un fallo al arrancar «%s»: %s\n"
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, c-format
msgid "Failed to load configuration from %s\n"
msgstr "Se produjo un fallo al cargar la configuración de %s\n"
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr "«gnunet-arm» o «ssh» no parecen terminar.\n"
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr "# pares en la lista negra"
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
#, fuzzy
msgid "# connect requests issued to ATS"
msgstr "# peticiones de conexión requeridas al servicio de transporte"
# gossiped??
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
msgid "# HELLO messages gossipped"
msgstr "# Mensajes «HELLO» rumoreados"
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
msgid "# friends connected"
msgstr "# amigos conectados"
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
"¡Se produjo un fallo al conectar con el servicio principal, no se puede "
"gestionar la topología!\n"
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr "Me he encontrado «%s» en mi lista de amigos (inútil, ignorado)\n"
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, c-format
msgid "Found friend `%s' in configuration\n"
msgstr "Encontrado amigo «%s» en la configuración\n"
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
msgid "# friends in configuration"
msgstr "# amigos en configuración"
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
"Menos amigos especificados que los requeridos por el contador mínimo de "
"amigos. Sólo me conectaré a amigos.\n"
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
"Más conexiones amistosas requeridas que el número objetivo total de "
"conexiones.\n"
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
msgid "# HELLO messages received"
msgstr "# mensajes «HELLO» recibidos"
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
#, fuzzy
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr ""
"El servicio de transporte carece de opciones de configuración de clave. "
"Saliendo.\n"
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
#, fuzzy
msgid "GNUnet TCP communicator"
msgstr "Configurador Gtk de GNUnet"
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
#, fuzzy
msgid "GNUnet UDP communicator"
msgstr "Configurador Gtk de GNUnet"
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
#, fuzzy
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr "El número máximo de conexiones es %u\n"
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, fuzzy, c-format
msgid "Cannot create path to `%s'\n"
msgstr "Se produjo un fallo al crear la página para «%s»\n"
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr "# mensajes omitidos debido a un cliente lento"
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr "# bytes de «payload» omitidos (el otro par no estaba conectado)"
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
#, fuzzy
msgid "# bytes payload discarded due to not connected peer"
msgstr "# bytes de «payload» descartados debido a par no conectado"
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
msgid "# bytes total received"
msgstr "# total de bytes recibidos"
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
msgid "# bytes payload received"
msgstr "# bytes de «payload» recibidos"
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr "# desconexiones debido a la lista negra"
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, fuzzy, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr "Se produjo un fallo al cargar el módulo del transporte para «%s»\n"
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, fuzzy, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr "Añadiendo «%s» sin direcciones para el par «%s»\n"
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr "# refrescos de mi «HELLO»"
msgid "# session creation failed"
msgstr "# sesiones wlan creadas"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
msgid "# DISCONNECT messages sent"
msgstr "# Mensajes «DISCONNECT» enviados"
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr "# desconexiones debido a una cuota de 0"
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
msgid "# bytes in message queue for other peers"
msgstr "# bytes en la cola de mensajes para otros pares"
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
msgid "# messages transmitted to other peers"
msgstr "# mensajes transmitidos a otros pares"
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
msgid "# transmission failures for messages to other peers"
msgstr "# fallos de transmisión en mensajes a otros pares"
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr "# mensajes expirados mientras estaban en la cola de transporte"
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr "# Mensajes «KEEPALIVE» descartados (par desconocido)"
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
msgid "# KEEPALIVE messages discarded (no session)"
msgstr "# mensajes «KEEPALIVE» descartados (no hay sesión)"
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr "# mensajes «KEEPALIVE_RESPONSE» descartados (no conectado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr "# Mensajes «KEEPALIVE_RESPONSE» descartados (no esperado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr "# mensajes «KEEPALIVE_RESPONSE» descartados (no conectado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr "# mensajes «KEEPALIVE_RESPONSE» descartados (no conectado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr "# mensajes «KEEPALIVE_RESPONSE» descartados (no conectado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr "# mensajes «KEEPALIVE_RESPONSE» descartados (no conectado)"
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
msgid "# messages discarded due to lack of neighbour record"
msgstr "# mensajes descartados debido a la falta de registro vecinal"
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
msgid "# bandwidth quota violations by other peers"
msgstr "# violaciones de la cuota de ancho de banda por otros pares"
# throttling?
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr "# ms de impulso sugeridos"
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr ""
-"Se produjo un fallo al procesar el mensaje interno del programa auxiliar "
-"«%s»\n"
+"Se produjo un fallo al procesar el mensaje interno del programa auxiliar «%"
+"s»\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr "Se produjo un fallo al procesar la petición DNS. Omitiendo.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "# Mensajes «DISCONNECT» enviados"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Se produjo un fallo al transmitir un mensaje al servicio «%s».\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr "Se produjo un fallo al procesar la petición DNS. Omitiendo.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "¡Se produjo un fallo al conectar al servicio de estadísticas!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
#, fuzzy
msgid "# SYN_ACK messages sent"
msgstr "# Mensajes «DISCONNECT» enviados"
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Se produjo un fallo al transmitir un mensaje al servicio «%s».\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
#, fuzzy
msgid "# SYN messages received"
msgstr "# mensajes PING recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
#, fuzzy
msgid "# SYN_ACK messages received"
msgstr "# mensajes SET QUOTA recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
#, fuzzy
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr "# Mensajes «CONNECT_ACK» inesperados (sin par)"
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
#, fuzzy
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr "# Mensajes «CONNECT_ACK» inesperados (no estaba preparado)"
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
#, fuzzy
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr "# Mensajes «CONNECT_ACK» inesperados (esperando en el ATS)"
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
#, fuzzy
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr "# Mensajes «CONNECT_ACK» inesperados (desconectando)"
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
#, fuzzy
msgid "# ACK messages received"
msgstr "# mensajes «REQUEST CONNECT» recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# Mensajes «SESSION ACK» inesperados"
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
#, fuzzy
msgid "# quota messages ignored (malformed)"
msgstr "# mensajes de desconexión ignorados (formato antiguo)"
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
#, fuzzy
msgid "# QUOTA messages received"
msgstr "# Mensajes «GAP PUT» recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
#, fuzzy
msgid "# disconnect messages ignored (malformed)"
msgstr "# mensajes de desconexión ignorados (formato antiguo)"
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
#, fuzzy
msgid "# DISCONNECT messages received"
msgstr "# mensajes «REQUEST CONNECT» recibidos"
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr "# mensajes de desconexión ignorados (marca temporal)"
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
msgid "# disconnected from peer upon explicit request"
msgstr "# desconexiones del par debido a una petición explícita"
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
#, fuzzy
msgid "# validations running"
msgstr "Base de datos sqlite ejecutándose\n"
msgid "# address revalidations started"
msgstr "# revalidaciones de direcciones iniciadas"
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
msgid "# PING message for different peer received"
msgstr "# Mensajes PING recibidos para un par diferente"
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, fuzzy, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
"No confirmando el PING con dirección «%s» ya que no puedo confirmar tener "
"esa dirección.\n"
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, fuzzy, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"No confirmando el PING con dirección «%s» ya que no puedo confirmar tener "
"esa dirección.\n"
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, fuzzy, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr "Se produjo un fallo al crear la página para «%s»\n"
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr "# unicast de PONG vía transporte confiable"
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr "# multicast de PONG a todas las direcciones disponibles"
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr "# PONG omitidos, no hay una validación pendiente coincidente"
-#: src/transport/gnunet-service-transport_validation.c:1518
-msgid "# PONGs dropped, signature expired"
-msgstr "# Mensajes PONG omitidos, firma expirada"
+#: src/transport/gnunet-service-transport_validation.c:1517
+msgid "# PONGs dropped, signature expired"
+msgstr "# Mensajes PONG omitidos, firma expirada"
+
+#: src/transport/gnunet-service-transport_validation.c:1572
+#, fuzzy
+msgid "# validations succeeded"
+msgstr "# revalidaciones de direcciones iniciadas"
+
+#: src/transport/gnunet-service-transport_validation.c:1627
+#, fuzzy
+msgid "# HELLOs given to peerinfo"
+msgstr "# «HELLO» obtenidos de «peerinfo»"
+
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+#, fuzzy
+msgid "receive data from peer"
+msgstr "# respuestas recibidas de otros pares"
+
+#: src/transport/gnunet-transport-profiler.c:626
+#, fuzzy
+msgid "iterations"
+msgstr "Otras configuraciones"
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-transport-profiler.c:631
#, fuzzy
-msgid "# validations succeeded"
-msgstr "# revalidaciones de direcciones iniciadas"
+msgid "number of messages to send"
+msgstr "número de mensajes a usar por iteración"
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-transport-profiler.c:636
#, fuzzy
-msgid "# HELLOs given to peerinfo"
-msgstr "# «HELLO» obtenidos de «peerinfo»"
+msgid "message size to use"
+msgstr "tamaño del mensaje"
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr "identidad del par"
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+msgid "Direct access to transport service."
+msgstr "Acceso directo al servicio de transporte."
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport.c:413
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr "Transmitidos %llu bytes/s (%llu bytes en %s)\n"
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr "Recibidos %llu bytes/s (%llu bytes en %s)\n"
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, c-format
msgid "Failed to connect to `%s'\n"
msgstr "Se produjo un fallo al conectar con «%s»\n"
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr "Se produjo un fallo al resolver la dirección para el par «%s»\n"
# Miguel: La traducción no es literal, pero me parece más correcta
# en castellano.
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "No se pudieron listar las conexiones, expiró el plazo\n"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, fuzzy, c-format
msgid "Transmitting %u bytes\n"
msgstr "Transmitiendo %u bytes a %s\n"
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"Conectado satisfactoriamente a «%s», empezando a mandar datos de prueba en "
"bloques de %u Kb\n"
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr "Desconectado del par «%s» mientras probaba\n"
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr "%24s: %-17s %4s (%u conexiones en total)\n"
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
msgid "Connected to"
msgstr "Conectado a"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
msgid "Disconnected from"
msgstr "Desconectado de"
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, fuzzy, c-format
msgid "Received %u bytes\n"
msgstr "Recibidos %u bytes de %s\n"
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, c-format
msgid "Peer `%s': %s %s\n"
msgstr "Par «%s»: %s %s\n"
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr ""
"El cliente se desconectó del servicio principal, tratando de reconectar.\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, fuzzy, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"Múltiples operaciones introducidas. Por favor, seleccione únicamente una "
"operación: %s, %s, %s, %s, %s, %s\n"
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, fuzzy, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-"Ninguna operación introducida. Por favor, seleccione alguna operación: %s, "
-"%s, %s, %s, %s, %s\n"
+"Ninguna operación introducida. Por favor, seleccione alguna operación: %s, %"
+"s, %s, %s, %s, %s\n"
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "Se produjo un fallo al conectar con el servicio de transporte\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
msgid "Failed to connect to transport service\n"
msgstr "Se produjo un fallo al conectar con el servicio de transporte\n"
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr "Empezando a recibir datos de prueba\n"
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
#, fuzzy
msgid "print information for all peers (instead of only connected peers)"
msgstr "Imprime información sobre los pares conectados."
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr "medir cómo de rápido recibimos datos de todos los pares (hasta CTRL-C)"
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
#, fuzzy
msgid "disconnect from a peer"
msgstr "conectar a un par"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
msgid "provide information about all current connections (once)"
msgstr "provee información sobre todas las conexiones actuales (una vez)"
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr ""
"provee información sobre todas los eventos de conexión y desconexión "
"(continuamente)"
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
msgid "do not resolve hostnames"
msgstr "no resolver nombres de máquinas"
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr "identidad del par"
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
#, fuzzy
msgid "monitor plugin sessions"
msgstr "# sesiones wlan pendientes"
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr "enviar data para prueba a otro par (hasta CTRL-C)"
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-msgid "Direct access to transport service."
-msgstr "Acceso directo al servicio de transporte."
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-#, fuzzy
-msgid "receive data from peer"
-msgstr "# respuestas recibidas de otros pares"
-
-#: src/transport/gnunet-transport-profiler.c:586
-#, fuzzy
-msgid "iterations"
-msgstr "Otras configuraciones"
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "número de mensajes a usar por iteración"
-
-#: src/transport/gnunet-transport-profiler.c:596
-#, fuzzy
-msgid "message size to use"
-msgstr "tamaño del mensaje"
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
"¡No se pudo inicializar el multi-manejador de curl, no se pudo iniciar el "
"módulo %s!\n"
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, c-format
msgid "Shutting down plugin `%s'\n"
msgstr "Finalizando el módulo «%s»\n"
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr "Finalización del módulo «%s» completa\n"
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, fuzzy, c-format
msgid "Maximum number of requests is %u\n"
msgstr "El número máximo de conexiones es %u\n"
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr "¡Deshabilitando IPv6 ya que no está soportado en este sistema!\n"
msgid "# bytes dropped by SMTP (outgoing)"
msgstr "# bytes omitidos por SMTP (salientes)"
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr "Longitud de dirección inesperada: %u bytes\n"
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
msgid "# TCP sessions active"
msgstr "# Sesiones TCP activas"
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
msgid "# bytes currently in TCP buffers"
msgstr "# bytes actualmente en los buffer TCP"
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
msgid "# bytes discarded by TCP (disconnect)"
msgstr "# bytes descartados por TCP (desconectado)"
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
msgid "# bytes discarded by TCP (timeout)"
msgstr "# bytes omitidos por TCP (expirados)"
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
msgid "# bytes transmitted via TCP"
msgstr "# bytes recibidos vía TCP"
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr "# peticiones de desconexión del servicio de transporte por TCP"
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
msgid "# TCP WELCOME messages received"
msgstr "# Mensajes «WELCOME» TCP recibidos"
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr "# bytes recibidos vía TCP"
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr "# conexiones «stream» activas"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
#, fuzzy
msgid "# TCP server connect events"
msgstr "# Pares conectados"
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr "# eventos de desconexión TCP a nivel de red"
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
msgid "Failed to start service.\n"
msgstr "Se produjo un fallo al iniciar el servicio.\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr "Transporte TCP escuchando en el puerto %llu\n"
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr "Transporte TCP no escuchando en ningún puerto (únicamente cliente)\n"
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr "El transporte TCP anuncia que está en el puerto %llu\n"
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-#, fuzzy
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr "# beacons HELLO multicast IPv6 recibidos vía UDP"
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-"Se produjo un fallo al establecer la opción de «broadcast» IPv4 para el "
-"«socket» en el puerto %d\n"
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "Se produjo un fallo al abrir los «sockets» UDP\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
#, fuzzy
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr "¡Deshabilitando IPv6 ya que no está soportado en este sistema!\n"
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "«%s» no es una dirección IP válida.\n"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "«%s» no es una dirección IP válida.\n"
msgid "Failed to create UDP network sockets\n"
msgstr "Se produjo un fallo al crear una nueva firma"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+#, fuzzy
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr "# beacons HELLO multicast IPv6 recibidos vía UDP"
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+"Se produjo un fallo al establecer la opción de «broadcast» IPv4 para el "
+"«socket» en el puerto %d\n"
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr "# sesiones WLAN alojadas"
+#: src/transport/plugin_transport_xt.c:4010
+#, fuzzy, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr "Transporte TCP escuchando en el puerto %llu\n"
+
+#: src/transport/plugin_transport_xt.c:4014
+#, fuzzy
+msgid "XT transport not listening on any port (client only)\n"
+msgstr "Transporte TCP no escuchando en ningún puerto (únicamente cliente)\n"
+
+#: src/transport/plugin_transport_xt.c:4018
+#, fuzzy, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr "El transporte TCP anuncia que está en el puerto %llu\n"
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# Sesiones TCP activas"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, fuzzy, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+"UDP no pudo transmitir el mensaje a «%s»: La red parece caída, por favor, "
+"compruebe su configuración de red\n"
+
+#: src/transport/plugin_transport_xu.c:1251
+#, fuzzy
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+"UDP no pudo transmitir el mensaje a «%s». Por favor, compruebe su "
+"configuración de red y deshabilite IPv6 si su conexión carece de una "
+"dirección IPv6 global\n"
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "Se produjo un fallo al abrir los «sockets» UDP\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "Se produjo un fallo al abrir los «sockets» UDP\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "Se produjo un fallo al crear una nueva firma"
+
#: src/transport/tcp_connection_legacy.c:452
#, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr "Aceptando conexión desde «%s»: %p\n"
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr "«%s» falló para el puerto %d (%s).\n"
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr "«%s» falló para el puerto %d (%s): dirección en uso actualmente\n"
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, fuzzy, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr "«%s» falló para «%.*s»: dirección en uso actualmente\n"
"El código de procesado para el mensaje del tipo %u no llamó a "
"«GNUNET_SERVER_receive_done» después de %s\n"
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, c-format
msgid "Unknown address family %d\n"
msgstr "Familia de direcciones %d desconocida\n"
msgid "Access from `%s' denied to service `%s'\n"
msgstr "Acceso denegado desde «%s» al servicio «%s»\n"
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr "No se pudo procesar la especificación de red IPv4 «%s» para «%s:%s»\n"
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr "No se pudo procesar la especificación de red IPv6 «%s» para «%s:%s»\n"
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
"No se pudo acceder a un «socket» pre-ascociado, lo intentaré asociar yo "
"mismo\n"
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr "El valor especificado «%s» para el servicio «%s» no es válido\n"
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr "El servicio «%s» se ejecuta en %s\n"
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr "No se pudo inicializar el proceso del servicio\n"
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
"No se pudo inicializar la función del servidor en el proceso del servicio\n"
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr "El proceso del servicio no devolvió un estado\n"
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr "No se pudo obtener información acerca del usuario «%s»: %s\n"
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr "No existe tal usuario"
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr "Imposible cambiar el usuario/grupo a «%s»: %s\n"
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr "demonizar (desasociar del terminal)"
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, fuzzy, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
#, fuzzy
msgid "Malformed configuration, exit ...\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
msgid "Could not access configuration file `%s'\n"
msgstr "No se pudo acceder al fichero de configuración «%s»\n"
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr "Se produjo un fallo al deserializar los metadatos «%s»"
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr "Se necesita un nombre de máquina no vacío para el servicio «%s».\n"
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "DEPURACIÓN"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "INFORMACIÓN"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr "MENSAJE"
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "PELIGRO"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "ERROR"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr "NINGUNO"
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr "Mensaje `%.*s» repetido %u veces en el último %s\n"
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr "NO VÁLIDO"
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr "dirección desconocida"
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr "dirección no válida"
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr "¡La configuración no especifica la opción «%s» en la sección «%s»!\n"
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
"El tamaño del fichero en disco es incorrecto para este «Bloom "
"filter» (esperado %llu, tiene %llu)\n"
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr "El firmado ECC falló en %s:%d: %s\n"
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, fuzzy, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr "El firmado ECC falló en %s:%d: %s\n"
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, fuzzy, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr "La verificación de la firma RSA fallo en %s:%d: %s\n"
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, fuzzy, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr "La verificación de la firma RSA fallo en %s:%d: %s\n"
msgid "Could not load peer's private key\n"
msgstr "No se pudo acceder a la clave de máquina.\n"
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr "libgcrypt no tiene la versión esperada (se necesita la versión %s).\n"
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "La verificación de la firma RSA fallo en %s:%d: %s\n"
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr "¡Se esperaba que «%s» fuera un directorio!\n"
"Se produjo un fallo al convertir el nombre en formato DNS IDNA «%s» a UTF-8: "
"%s\n"
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr ""
msgid "Sent DNS request to %s\n"
msgstr "Petición DNS enviada a %s\n"
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s: la opción «%s» es ambigua\n"
msgid "%s: option `--%s' does not allow an argument\n"
msgstr "%s: la opción «--%s» no permite un parámetro\n"
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr "%s: la opción «%c%s» no permite un parámetro\n"
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: la opción «%s» requiere un parámetro\n"
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s: opción no reconocida «--%s»\n"
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s: opción no reconocida «%c%s»\n"
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: opción ilegal -- %c\n"
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: opción no válida -- %c\n"
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: la opción requiere un parámetro -- %c\n"
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s: la opción «-W %s» es ambigua\n"
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr "%s: la opción «-W %s» no permite un parámetro\n"
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, c-format
msgid "Use %s to get a list of options.\n"
msgstr "Use %s para obtener una lista de opciones.\n"
-#: src/util/getopt.c:987
-#, fuzzy, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr "La opción «%s» no tiene sentido sin la opción «%s».\n"
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, fuzzy, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr "Falta la opción «%s» para la operación «%s»\n"
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr "imprime el número de versión"
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
"Los parámetros obligatorios para las opciones largas también lo son para sus "
"versiones cortas.\n"
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr "imprime esta ayuda"
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr ""
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr "crear ficheros de configuración únicos"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr "Tienes que introducir un número en la opción «%s».\n"
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr "Debes introducir un tiempo relativo en la opción «%s».\n"
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, fuzzy, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr "Debes introducir un tiempo relativo en la opción «%s».\n"
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, fuzzy, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr "Tienes que introducir un número en la opción «%s».\n"
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "Se produjo un fallo al cargar la configuración de %s\n"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, fuzzy, c-format
msgid "%s or %s argument is required\n"
msgstr "el parámetro --section es necesario\n"
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr "el parámetro --option es necesario para establecer un valor\n"
-#: src/util/gnunet-config.c:284
+#: src/util/gnunet-config.c:286
#, fuzzy
-msgid "interpret option value as a filename (with $-expansion)"
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
"obtener la opción del valor como un nombre de fichero (con expansión del $)"
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr "nombre de la sección a la que acceder"
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr "nombre de la opción a la que acceder"
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr "valor a establecer"
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
#, fuzzy
msgid "print available configuration sections"
msgstr "Falta configuración sobre las opciones de claves.\n"
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
msgid "Manipulate GNUnet configuration files"
msgstr "Manipular ficheros de configuración de GNUnet"
msgid "Failed to open `%s': %s\n"
msgstr "Se produjo un fallo al abrir «%s»: %s\n"
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, fuzzy, c-format
msgid "Generating %u keys like %s, please wait"
msgstr "Generando %u claves, por favor, espere"
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr "Generando %u claves, por favor, espere"
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, c-format
msgid ""
"\n"
"\n"
"Se produjo un fallo al escribir en «%s»: %s\n"
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, fuzzy, c-format
msgid ""
"\n"
"Finished!\n"
msgstr "¡Finalizado!\n"
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, fuzzy, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr "El fichero de máquinas %s no fue encontrado\n"
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, fuzzy, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr "El archivo de amigos «%s» está vacío.\n"
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, fuzzy, c-format
msgid "Could not read hostkey file: %s\n"
msgstr "¡No se puede leer el fichero de claves de máquina!\n"
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr "No se ha especificado la clave de máquina en la línea de comandos\n"
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr "crea «COUNT» pares de claves pública-privada (para pruebas)"
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr "imprime la clave pública en formato ASCII"
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
#, fuzzy
msgid "print the private key in ASCII format"
msgstr "imprime la clave pública en formato ASCII"
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
#, fuzzy
msgid "print the public key in HEX format"
msgstr "imprime la clave pública en formato ASCII"
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
msgid "Manipulate GNUnet private ECC key files"
msgstr "Manipular los ficheros de clave privada ECC de GNUnet"
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr "URI no válida: no comienza con «%s»\n"
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr "URI no válida: falla al especificar el subsistema\n"
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr "No hay un manejador conocido para el subsistema «%s»\n"
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr "realizar una búsqueda inversa"
msgid "Use build-in GNUnet stub resolver"
msgstr "Utilizar el resolvedor interno para pruebas de GNUnet"
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr "La carga de la clave de la máquina desde «%s» ha fallado.\n"
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
#, fuzzy
msgid "Manipulate GNUnet proof of work files"
msgstr "Manipular los ficheros de clave privada ECC de GNUnet"
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr "No se ha especificado una URI en la línea de comandos. Saliendo.\n"
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr "URI no válida: no comienza con «%s»\n"
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr "URI no válida: falla al especificar el subsistema\n"
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr "No hay un manejador conocido para el subsistema «%s»\n"
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr "Realizar las acciones predeterminadas para URI de GNUnet"
#, c-format
msgid "Failed to parse inbound message from helper `%s'\n"
msgstr ""
-"Se produjo un fallo al procesar el mensaje interno del programa auxiliar "
-"«%s»\n"
+"Se produjo un fallo al procesar el mensaje interno del programa auxiliar «%"
+"s»\n"
#: src/util/helper.c:606
#, c-format
msgid "Error writing to `%s': %s\n"
msgstr "Error escribiendo a «%s»: %s\n"
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr "Imposible acortar la ruta unix «%s» manteniendo el nombre único\n"
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"No se pudo determinar la ruta de instalación de %s. Establezca la variable "
"de entorno «%s».\n"
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr "¡No se pudo encontrar el programa llamado «%s» en PATH!\n"
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, fuzzy, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr "«%s» falló para el puerto %d (%s).\n"
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr "No se pudo determinar la ruta de instalación de los módulos.\n"
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, fuzzy, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "Se produjo un fallo al borrar el fichero de configuración %s\n"
msgstr ""
"No se pudo resolver nuestro nombre de dominio cualificado (FQDN) : %s\n"
-#: src/util/service.c:668
+#: src/util/service.c:1307
+msgid ""
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+msgstr ""
+
+#: src/util/service.c:2141
#, fuzzy, c-format
msgid ""
"Processing code for message of type %u did not call "
"El código de procesado para el mensaje del tipo %u no llamó a "
"«GNUNET_SERVER_receive_done» después de %s\n"
-#: src/util/service.c:1820
-msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
-msgstr ""
-
#: src/util/signal.c:89
#, c-format
msgid "signal (%d, %p) returned %d.\n"
msgstr "señal (%d, %p) devolvió %d.\n"
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "b"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr "Los conjuntos de caracteres pedidos fueron «%s»->«%s»\n"
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
"Se produjo un fallo al expandir «$HOME»: variable de entorno «HOME» no "
"establecida"
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr ""
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr "para siempre"
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr "0 ms"
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "ms"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "s"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "m"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "h"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
msgid "day"
msgstr "día"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
msgid "days"
msgstr "días"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr "fin del plazo"
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr "La dirección IPv6 no empezaba con «[»\n"
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr "La dirección IPv6 contenía «:» para separar el número de puerto\n"
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
"La dirección IPv6 contenía «]» antes de «:» para separar el número de "
"puerto\n"
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
"La dirección IPv6 contenía un número de puerto válido después del último "
"«:»\n"
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr "Dirección IPv6 «%s» no válida: %s\n"
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, fuzzy, c-format
msgid "Malformed port policy `%s'\n"
msgstr "Se produjo un fallo al iniciar el servicio «%s»\n"
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr "Formato no válido para la IP: «%s»\n"
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr "Notación de red no válida («/%d» no es válido en IPv4 CIDR)."
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, fuzzy, c-format
msgid "Invalid format: `%s'\n"
msgstr "Formato de tiempo no válido «%s»\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr "Notación de red no válida (no termina con «;»: «%s»)\n"
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr "Formato «%s» erroneo para máscara de red\n"
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, c-format
msgid "Wrong format `%s' for network\n"
msgstr "Formato «%s» erroneo para red\n"
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, fuzzy, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
"Se produjo un fallo al recuperar el espacio de nombres «%s», no se pudo "
"retomar la operación de publicación.\n"
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
#, fuzzy
msgid "# Active channels"
msgstr "# Túneles activos"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
#, fuzzy
msgid "# Messages dropped in cadet queue (overflow)"
msgstr "# Bytes omitidos en la cola mesh (desbordamiento)"
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
#, fuzzy
msgid "# ICMP packets received from cadet"
msgstr "# Paquetes ICMP recibidos de mesh"
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
#, fuzzy
msgid "# UDP packets received from cadet"
msgstr "# Paquetes UDP recibidos de mesh"
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
#, fuzzy
msgid "# TCP packets received from cadet"
msgstr "# Paquetes TCP recibidos de mesh"
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr "# Túneles mesh creados"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr "Protocolo %u no soportado, omitiendo\n"
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
#, fuzzy
msgid "# Packets dropped (channel not yet online)"
msgstr "# Paquetes ICMP omitidos (tipo no permitido)"
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr "# Paquetes ICMPv4 omitidos (no permitido)"
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr "# Paquetes ICMPv6 omitidos (no permitido)"
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
msgid "# Packets received from TUN interface"
msgstr "# Paquetes recibidos de la interfaz TUN"
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr "Paquete recibido para el destino «%s» no mapeado (omitiéndolo)\n"
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr "Recibido paquete IPv4 con opciones (omitiéndolo)\n"
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr "Recibido paquete de protocolo %d desconocido desde TUN (omitiéndolo)\n"
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr "No se encontraron direcciones IPv4 libres en el rango de la VPN\n"
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr "No se encontraron direcciones IPv6 libres en el rango de la VPN\n"
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
msgid "# Active destinations"
msgstr "# Destinos activos"
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
"Se produjo un fallo al alojar las direcciones IP para el nuevo destino\n"
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
#, fuzzy
msgid "Must specify valid IPv6 address"
msgstr "«%s» no es una dirección IP válida.\n"
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
"El soporte de IPv6 se deshabilita porque este sistema no soporta IPv6\n"
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
#, fuzzy
msgid "Must specify valid IPv4 address"
msgstr "«%s» no es una dirección IP válida.\n"
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
"El soporte de IPv4 se deshabilita porque este sistema no soporta IPv4\n"
msgid "Setup tunnels via VPN."
msgstr "Configurar túneles vía VPN."
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
msgid "Failed to connect to the namestore!\n"
msgstr "¡Se produjo un fallo al conectar con el almacén de nombres!\n"
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "Aserción fallida en %s:%d.\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "Aserción fallida en %s:%d.\n"
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "Violación externa del protocolo detectada en %s:%d.\n"
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "«%s» falló en el fichero «%s» en %s:%d con el error: %s\n"
#, fuzzy
-#~ msgid "listen on specified port (default: 7776)"
-#~ msgstr "escuchar en el puerto especificado (predeterminado: 7777)"
+#~ msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+#~ msgstr "«%s» debe ser instalado con SUID, se niega a arrancar\n"
#, fuzzy
-#~ msgid "XT transport listening on port %llu\n"
-#~ msgstr "Transporte TCP escuchando en el puerto %llu\n"
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "Imposible abrir el fichero de configuración '%s'.\n"
#, fuzzy
-#~ msgid "XT transport not listening on any port (client only)\n"
+#~ msgid "enable adding the creation time to the metadata of the uploaded file"
#~ msgstr ""
-#~ "Transporte TCP no escuchando en ningún puerto (únicamente cliente)\n"
+#~ "deshabilitar añadir tiempo de creación a los metadatos del fichero subido"
#, fuzzy
-#~ msgid "XT transport advertises itself as being on port %llu\n"
-#~ msgstr "El transporte TCP anuncia que está en el puerto %llu\n"
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "«%s» no es una dirección IP válida.\n"
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr "# Sesiones TCP activas"
+#~ msgid "Specify a timeout for the lookup"
+#~ msgstr "Especificar el tipo del registro a buscar"
#, fuzzy
-#~ msgid ""
-#~ "XU could not transmit message to `%s': Network seems down, please check "
-#~ "your network configuration\n"
-#~ msgstr ""
-#~ "UDP no pudo transmitir el mensaje a «%s»: La red parece caída, por favor, "
-#~ "compruebe su configuración de red\n"
+#~ msgid "Unable to parse CAA record string `%s'\n"
+#~ msgstr "No se pudo procesar la cadena de registro VPN «%s»\n"
#, fuzzy
-#~ msgid ""
-#~ "XU could not transmit IPv6 message! Please check your network "
-#~ "configuration and disable IPv6 if your connection does not have a global "
-#~ "IPv6 address\n"
-#~ msgstr ""
-#~ "UDP no pudo transmitir el mensaje a «%s». Por favor, compruebe su "
-#~ "configuración de red y deshabilite IPv6 si su conexión carece de una "
-#~ "dirección IPv6 global\n"
+#~ msgid "reduce output"
+#~ msgstr "Sin salida innecesaria"
#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "Se produjo un fallo al abrir los «sockets» UDP\n"
+#~ msgid "The EGO to use"
+#~ msgstr "tamaño del mensaje"
#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "Se produjo un fallo al abrir los «sockets» UDP\n"
+#~ msgid "OpenID Connect REST API initialized\n"
+#~ msgstr "Conexión fallida\n"
#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
-#~ msgstr "Se produjo un fallo al crear una nueva firma"
+#~ msgid "CONFIG REST API initialized\n"
+#~ msgstr "Conexión fallida\n"
#, fuzzy
-#~ msgid "Print information about DV state"
-#~ msgstr "Imprime información acerca del estado del ATS"
+#~ msgid "Option `%s' can't be used with other options.\n"
+#~ msgstr "La opción «%s» no tiene sentido sin la opción «%s».\n"
#, fuzzy
#~ msgid "Invalid tunnel owner `%s'\n"
#~ msgid "Provide information about a particular tunnel"
#~ msgstr "proveer información acerca de un túnel en particular"
-#, fuzzy
-#~ msgid "Failed to store membership information!\n"
-#~ msgstr ""
-#~ "Se produjo un fallo al retomar la operación de publicación «%s»: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "¡Se produjo un fallo al configurar el túnel mesh!\n"
-
-#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "Parámetro no válido «%s»\n"
-
-#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "Se produjo un fallo al iniciar el demonio: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to get fragment!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to get message!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to get message fragment!\n"
-#~ msgstr "Se produjo un fallo al procesar un mensaje «HELLO»: mal formado\n"
-
-#, fuzzy
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr "Se produjo un fallo al cargar el estado: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "Se produjo un fallo al cargar el estado: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "Se produjo un fallo al cargar el estado: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to begin synchronizing state!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to end synchronizing state!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr "¡Se produjo un fallo al obtener la clave de máquina!\n"
-
-#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
-#~ msgstr "Imposible inicializar SQLite: %s.\n"
-
-#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
-#~ msgstr "Se produjo un fallo al preparar la sentencia «%s»\n"
-
-#, fuzzy
-#~ msgid "`%s' failed at %s:%d with error: %s (%d)\n"
-#~ msgstr "«%s» falló en %s: %d con el error: %s\n"
-
-#, fuzzy
-#~ msgid "SQLite database running\n"
-#~ msgstr "Base de datos sqlite ejecutándose\n"
-
-#, fuzzy
-#~ msgid "--place missing or invalid.\n"
-#~ msgstr "Parámetro no válido «%s»\n"
-
-#, fuzzy
-#~ msgid "name or public key of ego"
-#~ msgstr "Parámetro no válido «%s»\n"
-
-#, fuzzy
-#~ msgid "wait for incoming messages"
-#~ msgstr "Falló al entregar el mensaje '%s'.\n"
-
-#, fuzzy
-#~ msgid "GNS name"
-#~ msgstr "Mostrar el _nombre"
-
-#, fuzzy
-#~ msgid "method name"
-#~ msgstr "Mostrar el _nombre"
-
-#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "número de mensajes a usar por iteración"
-
#~ msgid "Could not resolve `%s' (%s): %s\n"
#~ msgstr "No se pudo resolver «%s» (%s): %s\n"
#, fuzzy
#~ msgid "Failed to run upnp client for port %u\n"
#~ msgstr ""
-#~ "Se produjo un fallo al inicializar la clave de la máquina desde el par "
-#~ "%u\n"
+#~ "Se produjo un fallo al inicializar la clave de la máquina desde el par %"
+#~ "u\n"
#~ msgid "malformed"
#~ msgstr "mal formado"
#~ msgid "Template datacache running\n"
#~ msgstr "Caché de datos de plantilla en ejecución\n"
-#~ msgid "`%s' must be installed SUID, refusing to run\n"
-#~ msgstr "«%s» debe ser instalado con SUID, se niega a arrancar\n"
-
# Miguel: "Outbound" lo he traducido como salida en todo el texto.
#~ msgid "Outbound quota configure for network `%s' is %llu\n"
#~ msgstr "La cuota de salida configurada para la red «%s» es %llu\n"
#~ msgstr "Imprimir información acerca de tuneles mesh y pares."
#~ msgid ""
-#~ "%s service is lacking key configuration settings (%s). Using default "
-#~ "(%u).\n"
+#~ "%s service is lacking key configuration settings (%s). Using default (%"
+#~ "u).\n"
#~ msgstr ""
#~ "El servicio %s carece de opciones de configuración de clave (%s). Usando "
#~ "predeterminada (%u).\n"
#~ msgid ""
#~ "Syntax error in topology specification at offset %llu, skipping bytes.\n"
#~ msgstr ""
-#~ "Error de sintaxis en la especificación de topología en el desplazamiento "
-#~ "%llu, omitiendo bytes.\n"
+#~ "Error de sintaxis en la especificación de topología en el desplazamiento %"
+#~ "llu, omitiendo bytes.\n"
#~ msgid ""
-#~ "Syntax error in topology specification at offset %llu, skipping bytes `"
-#~ "%s'.\n"
+#~ "Syntax error in topology specification at offset %llu, skipping bytes `%"
+#~ "s'.\n"
#~ msgstr ""
-#~ "Error de sintaxis en la especificación de topología en el desplazamiento "
-#~ "%llu, omitiendo bytes «%s».\n"
+#~ "Error de sintaxis en la especificación de topología en el desplazamiento %"
+#~ "llu, omitiendo bytes «%s».\n"
#~ msgid "ECC signature verification failed at %s:%d: %s\n"
#~ msgstr "La verificación de firma ECC falló en %s:%d: %s\n"
#~ "File `%s' does not contain a valid private key (too long, %llu bytes). "
#~ "Deleting it.\n"
#~ msgstr ""
-#~ "El fichero «%s» no contiene una clave privada válida (demasiado grande, "
-#~ "%llu bytes). Borrándolo.\n"
+#~ "El fichero «%s» no contiene una clave privada válida (demasiado grande, %"
+#~ "llu bytes). Borrándolo.\n"
#~ msgid ""
#~ "File `%s' does not contain a valid private key (failed decode, %llu "
#~ "File `%s' does not contain a valid private key (too long, %llu bytes). "
#~ "Renaming it.\n"
#~ msgstr ""
-#~ "El fichero «%s» no contiene una clave privada válida (demasiado grande, "
-#~ "%llu bytes). Renombrándolo.\n"
+#~ "El fichero «%s» no contiene una clave privada válida (demasiado grande, %"
+#~ "llu bytes). Renombrándolo.\n"
#~ msgid "gnunet-rsa failed"
#~ msgstr "«gnunet-rsa» falló"
#~ msgid "Syntax error in blacklist file at offset %llu, giving up!\n"
#~ msgstr ""
-#~ "¡Error de sintaxis en el fichero de la lista negra en el desplazamiento "
-#~ "%llu, rindiendose!\n"
+#~ "¡Error de sintaxis en el fichero de la lista negra en el desplazamiento %"
+#~ "llu, rindiendose!\n"
#~ msgid "Syntax error in blacklist file at offset %llu, skipping bytes.\n"
#~ msgstr ""
-#~ "Error de sintaxis en el fichero de la lista negra en el desplazamiento "
-#~ "%llu, omitiendo bytes.\n"
+#~ "Error de sintaxis en el fichero de la lista negra en el desplazamiento %"
+#~ "llu, omitiendo bytes.\n"
#~ msgid "Found myself `%s' in blacklist (useless, ignored)\n"
#~ msgstr "Me he encontrado «%s» en mi lista negra (inútil, ignorado)\n"
#~ msgid "Failed to open named pipe `%s' for writing: %s\n"
#~ msgstr ""
-#~ "Se produjo un fallo al abrir el fichero (tubería) «%s» para escritura: "
-#~ "%s\n"
+#~ "Se produjo un fallo al abrir el fichero (tubería) «%s» para escritura: %"
+#~ "s\n"
#~ msgid "session identifier"
#~ msgstr "identificador de sesión"
#~ msgid "Error receiving response to `%s' request from ARM for service `%s'\n"
#~ msgstr ""
-#~ "Error recibiendo respuesta a la petición «%s» del ARM para el servicio "
-#~ "«%s»\n"
+#~ "Error recibiendo respuesta a la petición «%s» del ARM para el servicio «%"
+#~ "s»\n"
#~ msgid "Requesting termination of service `%s'.\n"
#~ msgstr "Solicitando finalización del servicio «%s».\n"
#, fuzzy
#~ msgid ""
-#~ "(%s) `%s' was confirmed that you and only you received from him or her: "
-#~ "%s\n"
+#~ "(%s) `%s' was confirmed that you and only you received from him or her: %"
+#~ "s\n"
#~ msgstr ""
#~ "(%s) «%s» confirmó que usted y sólo usted recibió de él o ella: %s\n"
#~ "Invalid value `%s' for option `%s' in section `%s': got %f, needed value "
#~ "greater than 0\n"
#~ msgstr ""
-#~ "Valor «%s» no válido para la opción «%s» en la sección «%s»: se obtuvo "
-#~ "%f, se necesitaba un valor mayor que 0\n"
+#~ "Valor «%s» no válido para la opción «%s» en la sección «%s»: se obtuvo %"
+#~ "f, se necesitaba un valor mayor que 0\n"
#~ msgid "Connecting nodes in 2d torus topology: %u rows %u columns\n"
#~ msgstr ""
#, fuzzy
#~ msgid "Configuration unchanged, no need to save.\n"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#, fuzzy
#~ msgid "Do you wish to save your new configuration?"
#, fuzzy
#~ msgid "Configuration changed. Save?"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#, fuzzy
#~ msgid "Error saving configuration."
#, fuzzy
#~ msgid "Configuration was unchanged, no need to save.\n"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#~ msgid "Can't open Service Control Manager"
#~ msgstr "Imposible abrir el Service Control Manager"
#, fuzzy
#~ msgid "Existing key in file `%s' failed format check, creating new key.\n"
#~ msgstr ""
-#~ "Se produjo un fallo al comprobar la clave local existente en el fichero "
-#~ "'%s', creando nueva clave local.\n"
+#~ "Se produjo un fallo al comprobar la clave local existente en el fichero '%"
+#~ "s', creando nueva clave local.\n"
#, fuzzy
#~ msgid "Creating new key for this nickname (this may take a while).\n"
#~ msgid ""
#~ "Existing hostkey in file `%s' failed format check, creating new hostkey.\n"
#~ msgstr ""
-#~ "Se produjo un fallo al comprobar la clave local existente en el fichero "
-#~ "'%s', creando nueva clave local.\n"
+#~ "Se produjo un fallo al comprobar la clave local existente en el fichero '%"
+#~ "s', creando nueva clave local.\n"
#~ msgid "Done creating hostkey.\n"
#~ msgstr "Correcto al crear la clave local.\n"
#~ "Unindexing of `%s' complete, %llu bytes took %llu seconds (%8.3f KiB/s).\n"
#~ msgstr ""
#~ "\n"
-#~ "El desindexado de '%s' se completó, %llu bytes tomaron %llu segundos "
-#~ "(%8.3f kbps).\n"
+#~ "El desindexado de '%s' se completó, %llu bytes tomaron %llu segundos (%"
+#~ "8.3f kbps).\n"
#, fuzzy
#~ msgid "Not enough arguments. You must specify a filename.\n"
#, fuzzy
#~ msgid "Download of file `%s' complete. Speed was %8.3f KiB per second.\n"
#~ msgstr ""
-#~ "Descarga del fichero '%s' completada. La velocidad media fue "
-#~ "%8.3fkilobytes por segundo.\n"
+#~ "Descarga del fichero '%s' completada. La velocidad media fue %"
+#~ "8.3fkilobytes por segundo.\n"
#~ msgid "Not enough arguments. You must specify a GNUnet file URI\n"
#~ msgstr ""
#~ msgid "Configuration or GNUnet version changed. You need to run `%s'!\n"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#~ msgid "The `%s' request received from client is malformed.\n"
#~ msgstr "La petición '%s' recibida del cliente esta mal formada.\n"
#, fuzzy
#~ msgid "Configuration file that specifies the MySQL username and password"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#, fuzzy
#~ msgid "Configuration of the MySQL database"
#~ msgstr ""
-#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar "
-#~ "'%s'!\n"
+#~ "La configuración o la versión de GNUnet cambiaron. ¡Debes ejecutar '%"
+#~ "s'!\n"
#, fuzzy
#~ msgid "MB of diskspace GNUnet can use for anonymous file sharing"
#~ msgid "%s: Rejected connection from blacklisted address %u.%u.%u.%u.\n"
#~ msgstr ""
-#~ "%s: Conexión rechazada de una dirección de la \"lista negra\" %u.%u.%u."
-#~ "%u.\n"
+#~ "%s: Conexión rechazada de una dirección de la \"lista negra\" %u.%u.%u.%"
+#~ "u.\n"
#~ msgid "Unexpected reply to `%s' operation.\n"
#~ msgstr "Respuesta inesperada a la operación '%s'.\n"
#~ msgid "gnunet-setup must have write-access to the configuration file `%s'\n"
#~ msgstr ""
-#~ "gnunet-setup debe tener acceso de escritura al fichero de configuración "
-#~ "'%s'\n"
+#~ "gnunet-setup debe tener acceso de escritura al fichero de configuración '%"
+#~ "s'\n"
#, fuzzy
#~ msgid ""
msgstr ""
"Project-Id-Version: gnunet 0.10.1\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2015-12-24 01:20+0100\n"
"Last-Translator: Stéphane Aulery <lkppo@free.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
-"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: fr\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, c-format
msgid "Failed to remove configuration file %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr ""
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
msgid "We disconnected from ARM before we could send a request"
msgstr ""
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
msgid "Unknown request status"
msgstr ""
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "%s est arrêté"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
#, fuzzy
msgid "is starting"
msgstr "%s est en cours de démarrage"
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "%s est en cours d'arrêt"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
#, fuzzy
msgid "is starting already"
msgstr "%s est déjà en cours de démarrage"
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "%s est déjà arrêté"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
#, fuzzy
msgid "is started already"
msgstr "%s est déjà démarré"
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "%s est déjà arrêté"
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
msgid "service is not known to ARM"
msgstr ""
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "Échec du démarrage de %s\n"
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
msgid "service cannot be manipulated because ARM is shutting down"
msgstr ""
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "%.s Code d'erreur inconnu"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr ""
msgid "Failed to stop the ARM service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "Dernier message reçu de %s\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, c-format
msgid "Failed to request a list of services: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
msgid "Error communicating with ARM. ARM not running?\n"
msgstr ""
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
msgid "Running services:\n"
msgstr "Services en exécution :\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr "Arrêté %s.\n"
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, c-format
msgid "Starting %s...\n"
msgstr "En cous de démarrage %s…\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr "En cour d'arrêt %s…\n"
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, c-format
msgid "Unknown status %u for service %s.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
msgid "stop all GNUnet services"
msgstr ""
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
msgid "start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
msgid "stop and start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr ""
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr ""
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr ""
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
msgid "list currently running services"
msgstr ""
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, c-format
msgid "Using `%s' instead\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "Résolution de « %s » échouée : %s\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr ""
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr "solveur utilisé"
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-msgid "print logging"
-msgstr "afficher le journal"
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "fornat invalide : « %s »\n"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
+msgstr "Arrêter la journalisation\n"
-#: src/ats/plugin_ats_mlp.c:2699
+#: src/ats-tests/ats-testing-log.c:892
#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_proportional.c:1164
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr "fornat invalide : « %s »\n"
+msgid "Start logging `%s'\n"
+msgstr "Démarrer la journalisation « %s »\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr "Arrêter la journalisation\n"
-
-#: src/ats-tests/ats-testing-log.c:892
-#, c-format
-msgid "Start logging `%s'\n"
-msgstr "Démarrer la journalisation « %s »\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr "solveur utilisé"
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr ""
-#: src/auction/gnunet-auction-create.c:163
-msgid "description of the item to be sold"
-msgstr ""
-
-#: src/auction/gnunet-auction-create.c:169
-msgid "mapping of possible prices"
-msgstr ""
-
-#: src/auction/gnunet-auction-create.c:175
-msgid "max duration per round"
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:181
-msgid "duration until auction starts"
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:186
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
msgid ""
-"number of items to sell\n"
-"0 for first price auction\n"
-">0 for vickrey/M+1st price auction"
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:193
-msgid "public auction outcome"
-msgstr ""
+#: src/ats/gnunet-ats-solver-eval.c:3306
+msgid "print logging"
+msgstr "afficher le journal"
-#: src/auction/gnunet-auction-create.c:198
-msgid "keep running in foreground until auction completes"
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
msgstr ""
-#: src/auction/gnunet-auction-create.c:209
-msgid "create a new auction and start listening for bidders"
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
msgstr ""
-#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
-#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
-msgid "help text"
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, c-format
+msgid "Failed to initialize solver `%s'!\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:631
+#: src/ats/gnunet-service-ats_plugins.c:304
#, c-format
-msgid "Invalid peer ID `%s'\n"
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:718
-msgid "Extra arguments are not applicable in combination with this option.\n"
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/ats/gnunet-service-ats_plugins.c:359
#, c-format
-msgid "Invalid target `%s'\n"
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:829
-msgid "No action requested\n"
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:854
-msgid "Provide information about a particular connection"
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:858
-msgid "Activate echo mode"
+#: src/ats/plugin_ats_mlp.c:1870
+#, c-format
+msgid "Adding address for peer `%s' multiple times\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
-msgid "Listen for connections using a shared secret among sender and recipient"
+#: src/ats/plugin_ats_mlp.c:1914
+#, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
-msgid "Provide information about a patricular peer"
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:872
-msgid "Provide information about all peers"
-msgstr ""
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "fornat invalide : « %s »\n"
-#: src/cadet/gnunet-cadet.c:876
-msgid "Provide information about all tunnels"
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:523
-#: src/secretsharing/gnunet-secretsharing-profiler.c:610
-msgid "number of peers in consensus"
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:529
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
msgid ""
-"how many peers (random selection without replacement) receive one value?"
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:535
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr "fornat invalide : « %s »\n"
+
+#: src/auction/gnunet-auction-create.c:163
+msgid "description of the item to be sold"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:169
+msgid "mapping of possible prices"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:175
+msgid "max duration per round"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:181
+msgid "duration until auction starts"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:186
+msgid ""
+"number of items to sell\n"
+"0 for first price auction\n"
+">0 for vickrey/M+1st price auction"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:193
+msgid "public auction outcome"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:198
+msgid "keep running in foreground until auction completes"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:209
+msgid "create a new auction and start listening for bidders"
+msgstr ""
+
+#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
+#: src/conversation/gnunet-conversation-test.c:254
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
+msgid "help text"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:631
+#, c-format
+msgid "Invalid peer ID `%s'\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:718
+msgid "Extra arguments are not applicable in combination with this option.\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:795
+#, c-format
+msgid "Invalid target `%s'\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:832
+msgid "No action requested\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:857
+msgid "Provide information about a particular connection"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:861
+msgid "Activate echo mode"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:866
+msgid "Listen for connections using a shared secret among sender and recipient"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:871
+msgid "Provide information about a patricular peer"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:875
+msgid "Provide information about all peers"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:879
+msgid "Provide information about all tunnels"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:523
+#: src/secretsharing/gnunet-secretsharing-profiler.c:610
+msgid "number of peers in consensus"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:529
+msgid ""
+"how many peers (random selection without replacement) receive one value?"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:535
#: src/set/gnunet-set-profiler.c:433 src/set/gnunet-set-profiler.c:439
#: src/set/gnunet-set-profiler.c:462
msgid "number of values"
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgid "Failed to allocate %u bytes for second packet\n"
msgstr ""
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr ""
msgid "Could not start playback audio helper.\n"
msgstr ""
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
msgid "fresh connection"
msgstr ""
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
msgid "key received"
msgstr ""
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
msgid "connection established"
msgstr ""
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "Déconnecté de"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "adresse inconnue"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr ""
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, c-format
msgid "Invalid command line argument `%s'\n"
msgstr ""
msgid "Failed to connect to CORE service!\n"
msgstr ""
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
msgid "provide information about all current connections (continuously)"
msgstr ""
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
msgid "Print information about connected peers."
msgstr ""
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, c-format
msgid "# bytes of messages of type %u received"
msgstr ""
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
msgid "# messages discarded (session disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr ""
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, c-format
msgid "Core service of `%s' ready.\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
msgid "# PAYLOAD dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
msgid "# PING messages transmitted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
msgid "# duplicate ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
msgid "# valid ephemeral keys received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
msgid "# PING messages received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
msgid "# PING messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
msgid "# PONG messages created"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
msgid "# sessions terminated by timeout"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
msgid "# keepalive messages sent"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
msgid "# PONG messages received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
msgid "# PONG messages dropped (connection down)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
msgid "# PONG messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
msgid "# PONG messages decrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
msgid "# session keys confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
msgid "# timeouts prevented via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
msgid "# rekey operations confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
msgid "# DATA message dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
msgid "# sessions terminated by key expiration"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
msgid "# bytes dropped (duplicates)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
msgid "# bytes dropped (out of sequence)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
msgid "# bytes dropped (ancient message)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
msgid "# bytes of payload decrypted"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
msgid "# peers connected"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
msgid "# type map refreshes sent"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
msgid "# outdated typemap confirmations received"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
msgid "# valid typemap confirmations received"
msgstr ""
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
msgid "# type maps received"
msgstr ""
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr ""
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr ""
msgid "GNUnet credential resolver tool"
msgstr ""
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, c-format
msgid "Failed to connect to GNS\n"
msgstr ""
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, c-format
msgid "Failed to connect to namestore\n"
msgstr ""
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "Résolution de « %s » échouée\n"
-#: src/credential/plugin_rest_credential.c:1128
-msgid "GNS REST API initialized\n"
-msgstr ""
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
msgid "# bytes stored"
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr ""
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
msgid "Failed to drop table from database.\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr ""
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr ""
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
msgid "Sqlite database running\n"
msgstr ""
msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-#, fuzzy
-msgid "number of peers to start"
-msgstr "nombre de valeurs"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:1009
-msgid "Measure quality and performance of the DHT service."
-msgstr ""
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
msgid "# requests TTL-dropped"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
msgid "# Peer selection failed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
msgid "# PUT requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
msgid "# PUT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
msgid "# P2P messages dropped due to full queue"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
msgid "# GET requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
msgid "# GET messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
msgid "# RESULT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
msgid "# Expired PUTs discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
msgid "# P2P PUT requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
msgid "# P2P PUT bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
msgid "# P2P GET requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
msgid "# P2P GET bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
msgid "# P2P FIND PEER requests processed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
msgid "# P2P GET requests ONLY routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
msgid "# Expired results discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
msgid "# P2P RESULTS received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
msgid "# P2P RESULT bytes received"
msgstr ""
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
msgid "# DHT requests combined"
msgstr ""
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+#, fuzzy
+msgid "number of peers to start"
+msgstr "nombre de valeurs"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+msgid "Measure quality and performance of the DHT service."
+msgstr ""
+
#: src/dht/plugin_block_dht.c:189
#, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
msgid "need a valid IPv4 or IPv6 address\n"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
+msgstr ""
+
+#: src/dv/gnunet-dv.c:175
+msgid "Print information about DV state"
msgstr ""
#: src/exit/gnunet-daemon-exit.c:960
msgid "# ICMP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
msgid "# UDP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
msgid "# Bytes received from CADET"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
msgid "# UDP IP-exit requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
msgid "# UDP service requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
msgid "# TCP service creation requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
msgid "# TCP IP-exit creation requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
msgid "# TCP DATA requests dropped (no session)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
msgid "# TCP data requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
msgid "# ICMP IP-exit requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
msgid "# ICMP service requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
msgid "# Inbound CADET channels created"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
msgid "# Messages transmitted via cadet channels"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
msgid "# Packets received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
msgid "# Bytes received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr "Doit être un nombre"
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
msgid "Publishing failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Résolution de « %s » échouée : %s\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
msgid "error on index-start request to `fs' service"
msgstr ""
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr ""
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr ""
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
msgid "could not connect to `fs' service"
msgstr ""
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr ""
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr ""
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, c-format
msgid "Recursive upload failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr ""
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr "pa_stream_new() échoué : %s\n"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr ""
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr ""
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr ""
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
msgid "Malformed KSK URI (`++' not allowed)"
msgstr ""
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
msgid "Malformed KSK URI (quotes not balanced)"
msgstr ""
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "Argument invalide « %s »\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr "Type d’URI non reconnu"
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr ""
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, c-format
msgid "Failed to load state: %s\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, c-format
msgid "Failed to save state to file %s\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr "Publication de « %s » terminée\n"
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, c-format
msgid "Publishing `%s'\n"
msgstr "Publication de « %s »\n"
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, c-format
msgid "Failed to run `%s'\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr ""
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr ""
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr ""
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr ""
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr ""
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-msgid "Special file-sharing operations"
-msgstr ""
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+msgid "Special file-sharing operations"
+msgstr ""
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
msgstr ""
#: src/fs/gnunet-publish.c:687
-msgid "Error scanning directory.\n"
-msgstr ""
+#, fuzzy
+msgid "Internal error scanning directory.\n"
+msgstr "Erreur interne."
#: src/fs/gnunet-publish.c:715
#, c-format
msgstr ""
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
-#: src/fs/gnunet-publish.c:911
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, c-format
msgid "Error searching: %s.\n"
msgstr ""
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
msgid "Could not create keyword URI from arguments.\n"
msgstr ""
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
msgid "Could not start searching.\n"
msgstr ""
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr ""
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr ""
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
msgid "# replies received via cadet"
msgstr ""
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
msgid "# replies received via cadet dropped"
msgstr ""
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
msgid "# Pending requests created"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
msgid "# Pending requests active"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
msgid "# replies received and matched"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
msgid "# storage requests dropped due to high load"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
msgid "# Replies received from DHT"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
msgid "# Replies received from CADET"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
msgid "# GAP PUT messages received"
msgstr ""
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, c-format
msgid "Received malformed DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
msgid "No DNS server specified!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-msgid "Specify the type of the record to lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:272
-msgid "Specify a timeout for the lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-msgid "GNUnet GNS resolver tool"
-msgstr ""
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
msgid "Failed to pass client to MHD\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, c-format
msgid "Unsupported socks version %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, c-format
msgid "Unsupported socks command %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, c-format
msgid "Unsupported socks address type %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+msgid "Specify the type of the record to lookup"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+msgid "GNUnet GNS resolver tool"
+msgstr ""
+
#: src/gns/gnunet-service-gns.c:506
msgid "Properly base32-encoded public key required"
msgstr ""
msgstr ""
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
msgid "Could not connect to DHT!\n"
msgstr ""
msgid "Unable to parse BOX record string `%s'\n"
msgstr ""
-#: src/gns/plugin_rest_gns.c:442
-msgid "Gns REST API initialized\n"
-msgstr ""
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "Résolution de « %s » échouée\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr ""
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr ""
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
msgid "Failed to parse HELLO message: malformed\n"
msgstr ""
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr ""
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, fuzzy, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr "Extension « %s » introuvable\n"
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
msgid "# active connections"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
msgid "bytes in hostlist"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr ""
msgid "hostlist requests refused (not ready)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
msgid "hostlist requests processed"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
msgid "# hostlist advertisements send"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, c-format
msgid "Failed to create ego: %s\n"
msgstr ""
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, c-format
msgid "Failed to set default ego: %s\n"
msgstr ""
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-#, fuzzy
-msgid "reduce output"
-msgstr "sortie verbeuse"
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-msgid "display private keys as well"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr ""
-#: src/identity/plugin_rest_identity.c:1311
-msgid "Identity REST API initialized\n"
-msgstr ""
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Résolution de « %s » échouée : %s\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr ""
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr ""
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, c-format
msgid "Could not access file `%s': %s\n"
msgstr ""
msgid "No records found for `%s'"
msgstr ""
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr ""
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
#: src/namecache/gnunet-namecache.c:238
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr ""
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
msgid "GNUnet zone manipulation tool"
msgstr ""
#: src/namecache/plugin_namecache_flat.c:121
#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
#: src/peerstore/plugin_peerstore_flat.c:379
#: src/peerstore/plugin_peerstore_flat.c:538
#, c-format
msgstr ""
#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
+#: src/namestore/plugin_namestore_heap.c:159
#: src/peerstore/plugin_peerstore_flat.c:394
#, c-format
msgid "Unable to get filesize: %s.\n"
msgstr ""
#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
#: src/peerstore/plugin_peerstore_flat.c:406
#, fuzzy, c-format
msgid "Unable to read file: %s.\n"
msgid "Failed to setup database at `%s'\n"
msgstr "Échec du démarrage de %s\n"
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
+msgid "Failed to start HTTP server\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
+msgid "Failed to connect to identity\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr ""
+
+#: src/namestore/gnunet-namestore.c:341
#, c-format
msgid "Adding record failed: %s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, c-format
msgid "Deleting record failed%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Résolution de « %s » échouée : %s\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr "ajouter"
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, c-format
msgid "Unsupported type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, c-format
msgid "Invalid time format `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr "supprimer"
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, c-format
msgid "Invalid URI `%s'\n"
msgstr "URI invalide « %s »\n"
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, c-format
msgid "Invalid nick `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, c-format
msgid "No default ego configured in identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, c-format
msgid "Cannot connect to identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Commande « %s » inconnue\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "fornat invalide : « %s »\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr "ajouter un enregistrement"
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr "suprimer un enregistrement"
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr "afficher les enregistrements"
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
msgid "set the desired nick name for the zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
msgid "monitor changes in the namestore"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
msgid "determine our name for the given PKEY"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
msgid "name of the ego controlling the zone"
msgstr ""
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-msgid "Failed to start HTTP server\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-msgid "Failed to connect to identity\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
-msgid "Flat file database running\n"
-msgstr ""
-
-#: src/namestore/plugin_rest_namestore.c:919
-msgid "Namestore REST API initialized\n"
+#: src/namestore/plugin_namestore_heap.c:778
+msgid "heap file database running\n"
msgstr ""
#: src/nat-auto/gnunet-nat-auto.c:193
msgstr ""
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
msgid "Failed to connect to `gnunet-nat-server'\n"
msgstr ""
msgid "Detected external IP `%s'\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, c-format
msgid "Detected internal network address `%s'.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
msgid "upnpc not found\n"
msgstr "upnpc introuvable\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
msgid "Connection reversal request failed\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, c-format
msgid "Failed to start %s\n"
msgstr "Échec du démarrage de %s\n"
msgid "`upnpc' command not found\n"
msgstr ""
-#: src/nse/gnunet-nse.c:123
-msgid "Show network size estimates from NSE service."
-msgstr ""
-
#: src/nse/gnunet-nse-profiler.c:849
msgid "limit to the number of connections to NSE services, 0 for none"
msgstr ""
msgid "Measure quality and performance of the NSE service."
msgstr ""
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
-msgid "Value is too large.\n"
+#: src/nse/gnunet-nse.c:122
+msgid "Show network size estimates from NSE service."
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, c-format
-msgid "Removing expired address of transport `%s'\n"
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
+msgid "Value is too large.\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:313
+#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
+msgid "%sPeer `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
+#: src/peerinfo-tool/gnunet-peerinfo.c:246
#, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
+msgid "\tExpires: %s \t %s\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:492
+#: src/peerinfo-tool/gnunet-peerinfo.c:299
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:658
+#: src/peerinfo-tool/gnunet-peerinfo.c:466
#, c-format
-msgid "Scanning directory `%s'\n"
+msgid "Failure: Received invalid %s\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:666
+#: src/peerinfo-tool/gnunet-peerinfo.c:480
#, c-format
-msgid "Still no peers found in `%s'!\n"
+msgid "Failed to write HELLO with %u bytes to file `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
+#: src/peerinfo-tool/gnunet-peerinfo.c:499
#, c-format
-msgid "Cleaning up directory `%s'\n"
+msgid "Wrote %s HELLO containing %u addresses with %u bytes to file `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
+#: src/peerinfo-tool/gnunet-peerinfo.c:799
#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
-msgstr ""
-
-#: src/peerinfo/peerinfo_api.c:220
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:239
-#, c-format
-msgid "%sPeer `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:246
-#, c-format
-msgid "\tExpires: %s \t %s\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
-#, c-format
-msgid "Failure: Cannot convert address to string for peer `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:466
-#, c-format
-msgid "Failure: Received invalid %s\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:480
-#, c-format
-msgid "Failed to write HELLO with %u bytes to file `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:499
-#, c-format
-msgid "Wrote %s HELLO containing %u addresses with %u bytes to file `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:799
-#, c-format
-msgid "I am peer `%s'.\n"
+msgid "I am peer `%s'.\n"
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:843
msgid "Failed to load transport plugin for `%s'\n"
msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
-msgid "Peerinfo REST API initialized\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, c-format
+msgid "Scanning directory `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:667
+#, c-format
+msgid "Still no peers found in `%s'!\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
+#, c-format
+msgid "Cleaning up directory `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
+
+#: src/peerinfo/peerinfo_api.c:220
+msgid "Failed to receive response from `PEERINFO' service."
msgstr ""
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "Impossible d’ouvrir « %s ».\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
msgid "Unexpected iteration response, this should not happen.\n"
msgstr ""
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
msgid "Received a malformed response from service."
msgstr ""
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr ""
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "Argument invalide « %s »\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+msgid "Tried to set invalid state variable name!\n"
+msgstr ""
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "Résolution de « %s » échouée\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+msgid "Tried to get invalid state variable name!\n"
+msgstr ""
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "Résolution de « %s » échouée\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Échec du démarrage de %s\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr ""
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+msgid "SQLite database running\n"
+msgstr ""
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr ""
msgid "# DNS replies dropped (too late?)"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, c-format
msgid "Ego is required\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, c-format
msgid "Requesting party key is required!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-msgid "The EGO to use"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-msgid "OpenID Connect REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-msgid "Identity Provider REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "Échec du démarrage de %s\n"
msgid "Search string `%s' is too long!\n"
msgstr ""
-#: src/rest/gnunet-rest-server.c:1039
-msgid "GNUnet REST server"
+#: src/rest-plugins/plugin_rest_copying.c:209
+msgid "COPYING REST API initialized\n"
msgstr ""
-#: src/rest/plugin_rest_config.c:265
-msgid "CONFIG REST API initialized\n"
+#: src/rest-plugins/plugin_rest_credential.c:1128
+msgid "GNS REST API initialized\n"
msgstr ""
-#: src/rest/plugin_rest_copying.c:209
-msgid "COPYING REST API initialized\n"
+#: src/rest-plugins/plugin_rest_gns.c:452
+msgid "Gns REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+msgid "Identity REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+msgid "Namestore REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+msgid "Identity Provider REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+msgid "Peerinfo REST API initialized\n"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:944
+msgid "GNUnet REST server"
msgstr ""
#: src/revocation/gnunet-revocation.c:129
msgid "Ego `%s' not found.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, c-format
msgid "Public key `%s' malformed\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
msgid "No filename to store revocation certificate given.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
msgid "No action specified. Nothing to do.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
msgid "Could not open revocation database file!"
msgstr ""
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
msgid "timeout for the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "nombre de valeurs"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
msgid "Measure quality and performance of the RPS service."
msgstr ""
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
msgid "You must specify at least one message ID to check!\n"
msgstr ""
msgid "Transaction ID shared with peer."
msgstr ""
-#: src/scalarproduct/gnunet-scalarproduct.c:379
-msgid "Calculate the Vectorproduct with a GNUnet peer."
+#: src/scalarproduct/gnunet-scalarproduct.c:379
+msgid "Calculate the Vectorproduct with a GNUnet peer."
+msgstr ""
+
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
+msgid "Connect to CADET failed\n"
+msgstr ""
+
+#: src/scalarproduct/scalarproduct_api.c:185
+msgid "Keys given to SCALARPRODUCT not unique!\n"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:616
+msgid "dkg start delay"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:622
+msgid "dkg timeout"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:628
+msgid "threshold"
+msgstr "threshold"
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:633
+msgid "also profile decryption"
+msgstr ""
+
+#: src/set/gnunet-service-set.c:2005
+#, fuzzy
+msgid "Could not connect to CADET service\n"
+msgstr "Impossible d’ouvrir « %s ».\n"
+
+#: src/set/gnunet-set-ibf-profiler.c:252
+msgid "number of element in set A-B"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:258
+msgid "number of element in set B-A"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:264
+msgid "number of common elements in A and B"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:270
+msgid "hash num"
+msgstr "numéro de hash"
+
+#: src/set/gnunet-set-ibf-profiler.c:276
+msgid "ibf size"
+msgstr "taille ibz"
+
+#: src/set/gnunet-set-profiler.c:444
+msgid "use byzantine mode"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:450
+msgid "force sending full set"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:456
+msgid "number delta operation"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:468
+msgid "operation to execute"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:474
+msgid "element size"
+msgstr ""
+
+#: src/social/gnunet-social.c:1166
+msgid "--place missing or invalid.\n"
+msgstr ""
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
-msgid "Connect to CADET failed\n"
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
msgstr ""
-#: src/scalarproduct/scalarproduct_api.c:185
-msgid "Keys given to SCALARPRODUCT not unique!\n"
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:616
-msgid "dkg start delay"
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:622
-msgid "dkg timeout"
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:628
-msgid "threshold"
-msgstr "threshold"
+#: src/social/gnunet-social.c:1304
+msgid "name or public key of ego"
+msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:633
-msgid "also profile decryption"
+#: src/social/gnunet-social.c:1309
+msgid "wait for incoming messages"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
-#, fuzzy
-msgid "Could not connect to CADET service\n"
-msgstr "Impossible d’ouvrir « %s ».\n"
+#: src/social/gnunet-social.c:1315
+msgid "GNS name"
+msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:267
-msgid "number of element in set A-B"
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:273
-msgid "number of element in set B-A"
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:280
-msgid "number of common elements in A and B"
+#: src/social/gnunet-social.c:1333
+msgid "method name"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
-msgid "hash num"
-msgstr "numéro de hash"
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "nombre de valeurs"
-#: src/set/gnunet-set-ibf-profiler.c:292
-msgid "ibf size"
-msgstr "taille ibz"
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
-#: src/set/gnunet-set-profiler.c:444
-msgid "use byzantine mode"
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
msgstr ""
-#: src/set/gnunet-set-profiler.c:450
-msgid "force sending full set"
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
msgstr ""
-#: src/set/gnunet-set-profiler.c:456
-msgid "number delta operation"
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
msgstr ""
-#: src/set/gnunet-set-profiler.c:468
-msgid "operation to execute"
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
msgstr ""
-#: src/set/gnunet-set-profiler.c:474
-msgid "element size"
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
msgstr ""
#: src/sq/sq.c:54
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
msgid "Failed to obtain statistics.\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, c-format
msgid "Failed to initialize watch routine\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, c-format
msgid "Invalid argument `%s'\n"
msgstr "Argument invalide « %s »\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr ""
msgstr ""
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr "%.s Code d'erreur inconnu"
-#: src/testbed/gnunet_testbed_mpi_spawn.c:118
-msgid "Waiting for child to exit.\n"
-msgstr ""
-
-#: src/testbed/gnunet_testbed_mpi_spawn.c:241
-#, c-format
-msgid "Spawning process `%s'\n"
-msgstr ""
-
-#: src/testbed/gnunet-testbed-profiler.c:287
+#: src/testbed/gnunet-testbed-profiler.c:289
msgid "tolerate COUNT number of continious timeout failures"
msgstr ""
-#: src/testbed/gnunet-testbed-profiler.c:291
+#: src/testbed/gnunet-testbed-profiler.c:294
msgid ""
"run profiler in non-interactive mode where upon testbed setup the profiler "
"does not wait for a keystroke but continues to run until a termination "
"signal is received"
msgstr ""
-#: src/testbed/testbed_api.c:400
+#: src/testbed/gnunet_testbed_mpi_spawn.c:118
+msgid "Waiting for child to exit.\n"
+msgstr ""
+
+#: src/testbed/gnunet_testbed_mpi_spawn.c:241
+#, c-format
+msgid "Spawning process `%s'\n"
+msgstr ""
+
+#: src/testbed/testbed_api.c:410
#, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr ""
msgid "Hosts file %s cannot be read\n"
msgstr ""
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr ""
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr ""
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr ""
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr ""
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr ""
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr ""
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr ""
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, c-format
msgid "Failed to start `%s': %s\n"
msgstr ""
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, c-format
msgid "Failed to load configuration from %s\n"
msgstr ""
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
msgid "# connect requests issued to ATS"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
msgid "# HELLO messages gossipped"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
msgid "# friends connected"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, c-format
msgid "Found friend `%s' in configuration\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
msgid "# friends in configuration"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
msgid "# HELLO messages received"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, c-format
msgid "Cannot create path to `%s'\n"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr ""
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
msgid "# bytes payload discarded due to not connected peer"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
msgid "# bytes total received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
msgid "# bytes payload received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr "# Session TCP active"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
msgid "# DISCONNECT messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
msgid "# messages transmitted to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
msgid "# transmission failures for messages to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
msgid "# KEEPALIVE messages discarded (no session)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
msgid "# messages discarded due to lack of neighbour record"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "Résolution de « %s » échouée\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
msgid "# SYN messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Échec du démarrage de %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
msgid "# SYN_ACK messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Échec du démarrage de %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
msgid "# SYN messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
msgid "# SYN_ACK messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
msgid "# ACK messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
msgid "# unexpected ACK messages"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
msgid "# quota messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
msgid "# QUOTA messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
msgid "# DISCONNECT messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
msgid "# disconnected from peer upon explicit request"
msgstr ""
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
msgid "# validations running"
msgstr ""
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
msgid "# PING message for different peer received"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
msgid "# HELLOs given to peerinfo"
msgstr ""
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+msgid "receive data from peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:626
+msgid "iterations"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:631
+#, fuzzy
+msgid "number of messages to send"
+msgstr "nombre de valeurs"
+
+#: src/transport/gnunet-transport-profiler.c:636
+msgid "message size to use"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+msgid "Direct access to transport service."
+msgstr ""
+
+#: src/transport/gnunet-transport.c:413
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, c-format
msgid "Failed to connect to `%s'\n"
msgstr ""
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "fornat invalide : « %s »\n"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, c-format
msgid "Transmitting %u bytes\n"
msgstr ""
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr ""
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
msgid "Connected to"
msgstr "Connecté à"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
msgid "Disconnected from"
msgstr "Déconnecté de"
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, fuzzy, c-format
msgid "Received %u bytes\n"
msgstr "%s message(s) reçu(s)\n"
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, c-format
msgid "Peer `%s': %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
msgid "Failed to connect to transport service for disconnection\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
msgid "Failed to connect to transport service\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
msgid "print information for all peers (instead of only connected peers)"
msgstr ""
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
msgid "disconnect from a peer"
msgstr ""
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
msgid "provide information about all current connections (once)"
msgstr ""
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr ""
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
msgid "do not resolve hostnames"
msgstr ""
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-msgid "Direct access to transport service."
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-msgid "receive data from peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:586
-msgid "iterations"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "nombre de valeurs"
-
-#: src/transport/gnunet-transport-profiler.c:596
-msgid "message size to use"
-msgstr ""
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, c-format
msgid "Shutting down plugin `%s'\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, c-format
msgid "Maximum number of requests is %u\n"
msgstr ""
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
msgid "# TCP sessions active"
msgstr "# Session TCP active"
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
msgid "# bytes currently in TCP buffers"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
msgid "# bytes discarded by TCP (disconnect)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
msgid "# bytes discarded by TCP (timeout)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
msgid "# bytes transmitted via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
msgid "# TCP WELCOME messages received"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr "# Session TCP active"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
msgid "# TCP server connect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
msgid "Failed to start service.\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "Résolution de « %s » échouée : %s\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "adresse invalide"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "adresse invalide"
msgid "Failed to create UDP network sockets\n"
msgstr ""
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+
#: src/transport/plugin_transport_unix.c:1416
#, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr "# Session TCP active"
+#: src/transport/plugin_transport_xt.c:4010
+#, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4014
+msgid "XT transport not listening on any port (client only)\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4018
+#, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# Session TCP active"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "Résolution de « %s » échouée : %s\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "Résolution de « %s » échouée : %s\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "Résolution de « %s » échouée : %s\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr ""
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, c-format
msgid "Unknown address family %d\n"
msgstr ""
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr "Aucun utilisateur trouvé"
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
msgid "Malformed configuration, exit ...\n"
msgstr ""
msgid "Could not access configuration file `%s'\n"
msgstr ""
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "DEBUG"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "INFO"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr ""
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "AVERTISSEMENT"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "ERREUR"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr "AUCUN"
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr ""
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr "INVALIDE"
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr "adresse inconnue"
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr "adresse invalide"
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr ""
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr ""
msgid "Could not load peer's private key\n"
msgstr ""
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr ""
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr ""
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr ""
msgid "Sent DNS request to %s\n"
msgstr ""
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr ""
msgid "%s: option `--%s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr ""
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr ""
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr ""
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr ""
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr ""
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr ""
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr ""
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, c-format
msgid "Use %s to get a list of options.\n"
msgstr ""
-#: src/util/getopt.c:987
-#, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr ""
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr ""
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr ""
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
msgstr ""
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr ""
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr ""
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr "fornat invalide : « %s »\n"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "fornat invalide : « %s »\n"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, c-format
msgid "%s or %s argument is required\n"
msgstr ""
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr ""
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
msgid "print available configuration sections"
msgstr ""
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
msgid "Manipulate GNUnet configuration files"
msgstr ""
msgid "Failed to open `%s': %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, c-format
msgid ""
"\n"
"Failed to write to `%s': %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, c-format
msgid ""
"\n"
"\n"
"Terminé !\n"
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr ""
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr ""
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, c-format
msgid "Could not read hostkey file: %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
msgid "Manipulate GNUnet private ECC key files"
msgstr ""
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
msgid "Manipulate GNUnet proof of work files"
msgstr ""
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr ""
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr ""
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr ""
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr ""
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr ""
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "fornat invalide : « %s »\n"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr ""
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "fornat invalide : « %s »\n"
msgid "Could not resolve our FQDN: %s\n"
msgstr "Résolution de « %s » échouée : %s\n"
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr ""
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "o"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr "µs"
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr "perpetuel"
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr "0 ms"
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "ms"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "s"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "m"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "h"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
msgid "day"
msgstr "jour"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
msgid "days"
msgstr "jours"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr "fin du temps"
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr ""
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr ""
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, c-format
msgid "Malformed port policy `%s'\n"
msgstr ""
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr ""
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr ""
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, c-format
msgid "Invalid format: `%s'\n"
msgstr "fornat invalide : « %s »\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr ""
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr ""
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, c-format
msgid "Wrong format `%s' for network\n"
msgstr ""
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
msgid "# Active channels"
msgstr "# Canaux actifs"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
msgid "# Messages dropped in cadet queue (overflow)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
msgid "# ICMP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
msgid "# UDP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
msgid "# TCP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
msgid "# Cadet channels created"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
msgid "# Packets dropped (channel not yet online)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
msgid "# Packets received from TUN interface"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
msgid "# Active destinations"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
msgid "Must specify valid IPv6 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
msgid "Must specify valid IPv4 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr "Configurer des tunnels via VPN."
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
msgid "Failed to connect to the namestore!\n"
msgstr ""
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "opus_encode_float() échoué : %s. Annulation\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr ""
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr "# Session TCP active"
-
-#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "Résolution de « %s » échouée : %s\n"
-
-#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "Résolution de « %s » échouée : %s\n"
-
-#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
+#~ msgid "Can not index file `%s': %s.\n"
#~ msgstr "Résolution de « %s » échouée : %s\n"
#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "Argument invalide « %s »\n"
-
-#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "Échec du démarrage de %s\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr "Échec du démarrage de %s\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "Échec du démarrage de %s\n"
-
-#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
+#~ msgid "Unable to parse CAA record string `%s'\n"
#~ msgstr "Résolution de « %s » échouée\n"
#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
-#~ msgstr "Échec du démarrage de %s\n"
-
-#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "nombre de valeurs"
+#~ msgid "reduce output"
+#~ msgstr "sortie verbeuse"
#, fuzzy
#~ msgid "Unable to connect to Postgres database '%s': %s\n"
#~ msgid "malformed"
#~ msgstr "malformé"
-#, fuzzy
-#~ msgid "Failed to start resolver!\n"
-#~ msgstr "Échec du démarrage de %s\n"
-
#~ msgid "Benchmarking done\n"
#~ msgstr "Benchmark terminé\n"
#~ msgid "unknown error"
#~ msgstr "erreur unconnue."
-
-#, fuzzy
-#~ msgid "Failed to setup cadet channel!\n"
-#~ msgstr "Échec du démarrage de %s\n"
msgstr ""
"Project-Id-Version: gnunet 0.10.1\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2019-04-23 20:58+0200\n"
"Last-Translator: Sebastiano Pistore <SebastianoPistore.info@protonmail.ch>\n"
"Language-Team: Italian <tp@lists.linux.it>\n"
-"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: it\n"
"X-Bugs: Report translation errors to the Language-Team address.\n"
"X-Generator: Poedit 2.2.1\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, c-format
msgid "Failed to remove configuration file %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr "Messaggio inviato con successo"
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
msgid "We disconnected from ARM before we could send a request"
msgstr ""
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
msgid "Unknown request status"
msgstr ""
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "# elementi memorizzati"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
msgid "is starting"
msgstr ""
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "# elementi memorizzati"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
msgid "is starting already"
msgstr ""
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "# elementi memorizzati"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
msgid "is started already"
msgstr ""
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "# elementi memorizzati"
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
msgid "service is not known to ARM"
msgstr ""
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
msgid "service failed to start"
msgstr ""
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
msgid "service cannot be manipulated because ARM is shutting down"
msgstr ""
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "Comando `%s' sconosciuto.\n"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr ""
msgid "Failed to stop the ARM service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, c-format
msgid "Failed to request a list of services: %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
msgid "Error communicating with ARM. ARM not running?\n"
msgstr ""
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
msgid "Running services:\n"
msgstr "Servizi in esecuzione:\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr "%s arrestato.\n"
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, c-format
msgid "Starting %s...\n"
msgstr "Avvio di %s in corso...\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr "Arresto di %s in corso...\n"
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, c-format
msgid "Unknown status %u for service %s.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
msgid "stop all GNUnet services"
msgstr "arresta tutti i servizi GNUnet"
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
msgid "start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
msgid "stop and start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr ""
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr ""
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr ""
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
msgid "list currently running services"
msgstr "elenca i servizi in esecuzione"
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, c-format
msgid "Using `%s' instead\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr ""
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-msgid "print logging"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2699
-#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
msgstr ""
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, c-format
-msgid "Invalid %s configuration %f\n"
+msgid "Start logging `%s'\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr ""
-
-#: src/ats-tests/ats-testing-log.c:892
-#, c-format
-msgid "Start logging `%s'\n"
-msgstr ""
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr ""
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr ""
-#: src/auction/gnunet-auction-create.c:163
-msgid "description of the item to be sold"
-msgstr ""
-
-#: src/auction/gnunet-auction-create.c:169
-msgid "mapping of possible prices"
-msgstr ""
-
-#: src/auction/gnunet-auction-create.c:175
-msgid "max duration per round"
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:181
-msgid "duration until auction starts"
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:186
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
msgid ""
-"number of items to sell\n"
-"0 for first price auction\n"
-">0 for vickrey/M+1st price auction"
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/auction/gnunet-auction-create.c:193
-msgid "public auction outcome"
+#: src/ats/gnunet-ats-solver-eval.c:3306
+msgid "print logging"
msgstr ""
-#: src/auction/gnunet-auction-create.c:198
-msgid "keep running in foreground until auction completes"
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
msgstr ""
-#: src/auction/gnunet-auction-create.c:209
-msgid "create a new auction and start listening for bidders"
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
msgstr ""
-#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
-#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
-msgid "help text"
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, c-format
+msgid "Failed to initialize solver `%s'!\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:631
+#: src/ats/gnunet-service-ats_plugins.c:304
#, c-format
-msgid "Invalid peer ID `%s'\n"
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:718
-msgid "Extra arguments are not applicable in combination with this option.\n"
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/ats/gnunet-service-ats_plugins.c:359
#, c-format
-msgid "Invalid target `%s'\n"
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:829
-msgid "No action requested\n"
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:854
-msgid "Provide information about a particular connection"
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:858
-msgid "Activate echo mode"
+#: src/ats/plugin_ats_mlp.c:1870
+#, c-format
+msgid "Adding address for peer `%s' multiple times\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
-msgid "Listen for connections using a shared secret among sender and recipient"
+#: src/ats/plugin_ats_mlp.c:1914
+#, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
-msgid "Provide information about a patricular peer"
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:872
-msgid "Provide information about all peers"
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, c-format
+msgid "Invalid %s configuration %f \n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:876
-msgid "Provide information about all tunnels"
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:523
-#: src/secretsharing/gnunet-secretsharing-profiler.c:610
-msgid "number of peers in consensus"
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:529
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
msgid ""
-"how many peers (random selection without replacement) receive one value?"
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:535
-#: src/set/gnunet-set-profiler.c:433 src/set/gnunet-set-profiler.c:439
-#: src/set/gnunet-set-profiler.c:462
-msgid "number of values"
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
msgstr ""
-#: src/consensus/gnunet-consensus-profiler.c:541
+#: src/ats/plugin_ats_proportional.c:1164
+#, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:163
+msgid "description of the item to be sold"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:169
+msgid "mapping of possible prices"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:175
+msgid "max duration per round"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:181
+msgid "duration until auction starts"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:186
+msgid ""
+"number of items to sell\n"
+"0 for first price auction\n"
+">0 for vickrey/M+1st price auction"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:193
+msgid "public auction outcome"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:198
+msgid "keep running in foreground until auction completes"
+msgstr ""
+
+#: src/auction/gnunet-auction-create.c:209
+msgid "create a new auction and start listening for bidders"
+msgstr ""
+
+#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
+#: src/conversation/gnunet-conversation-test.c:254
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
+msgid "help text"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:631
+#, c-format
+msgid "Invalid peer ID `%s'\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:718
+msgid "Extra arguments are not applicable in combination with this option.\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:795
+#, c-format
+msgid "Invalid target `%s'\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:832
+msgid "No action requested\n"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:857
+msgid "Provide information about a particular connection"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:861
+msgid "Activate echo mode"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:866
+msgid "Listen for connections using a shared secret among sender and recipient"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:871
+msgid "Provide information about a patricular peer"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:875
+msgid "Provide information about all peers"
+msgstr ""
+
+#: src/cadet/gnunet-cadet.c:879
+msgid "Provide information about all tunnels"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:523
+#: src/secretsharing/gnunet-secretsharing-profiler.c:610
+msgid "number of peers in consensus"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:529
+msgid ""
+"how many peers (random selection without replacement) receive one value?"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:535
+#: src/set/gnunet-set-profiler.c:433 src/set/gnunet-set-profiler.c:439
+#: src/set/gnunet-set-profiler.c:462
+msgid "number of values"
+msgstr ""
+
+#: src/consensus/gnunet-consensus-profiler.c:541
msgid "consensus timeout"
msgstr ""
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgid "Failed to allocate %u bytes for second packet\n"
msgstr "Generazione statistiche fallita\n"
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr ""
msgid "Could not start playback audio helper.\n"
msgstr ""
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr "# amici connessi"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
#, fuzzy
msgid "key received"
msgstr "# messaggi PONG ricevuti"
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
msgid "connection established"
msgstr "connessione stabilita"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "# amici connessi"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
msgid "unknown state"
msgstr "stato sconosciuto"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr ""
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, c-format
msgid "Invalid command line argument `%s'\n"
msgstr ""
msgid "Failed to connect to CORE service!\n"
msgstr ""
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
msgid "provide information about all current connections (continuously)"
msgstr ""
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
msgid "Print information about connected peers."
msgstr ""
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, c-format
msgid "# bytes of messages of type %u received"
msgstr ""
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
msgid "# messages discarded (session disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr ""
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "Avvio del servizio '%s' in corso\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr "# byte crittografati"
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
msgid "# PAYLOAD dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
msgid "# PING messages transmitted"
msgstr "# Messaggi PING trasmessi"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
#, fuzzy
msgid "# duplicate ephemeral keys ignored"
msgstr "# messaggi PONG ricevuti"
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
#, fuzzy
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr "# messaggi SYN ricevuti"
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
#, fuzzy
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr "# messaggi SYN ricevuti"
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "# messaggi PONG ricevuti"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
msgid "# PING messages received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
msgid "# PING messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
msgid "# PONG messages created"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
msgid "# sessions terminated by timeout"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
msgid "# keepalive messages sent"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
msgid "# PONG messages received"
msgstr "# messaggi PONG ricevuti"
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
msgid "# PONG messages dropped (connection down)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
msgid "# PONG messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
msgid "# PONG messages decrypted"
msgstr "# messaggi PONG decrittati"
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
msgid "# session keys confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
msgid "# timeouts prevented via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
msgid "# rekey operations confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
msgid "# DATA message dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
msgid "# sessions terminated by key expiration"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
msgid "# bytes dropped (duplicates)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
msgid "# bytes dropped (out of sequence)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
msgid "# bytes dropped (ancient message)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
msgid "# bytes of payload decrypted"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
msgid "# peers connected"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
msgid "# type map refreshes sent"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
msgid "# outdated typemap confirmations received"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
msgid "# valid typemap confirmations received"
msgstr ""
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
msgid "# type maps received"
msgstr ""
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr ""
msgid "GNUnet credential resolver tool"
msgstr ""
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, c-format
msgid "Failed to connect to GNS\n"
msgstr ""
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, c-format
msgid "Failed to connect to namestore\n"
msgstr ""
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/credential/plugin_rest_credential.c:1128
-msgid "GNS REST API initialized\n"
-msgstr ""
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
msgid "# bytes stored"
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr ""
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
msgid "Failed to drop table from database.\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr ""
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr ""
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
msgid "Sqlite database running\n"
msgstr ""
msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-msgid "number of peers to start"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:1009
-msgid "Measure quality and performance of the DHT service."
-msgstr ""
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
msgid "# requests TTL-dropped"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
msgid "# Peer selection failed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
msgid "# PUT requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
msgid "# PUT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
msgid "# P2P messages dropped due to full queue"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
msgid "# GET requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
msgid "# GET messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
msgid "# RESULT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
msgid "# Expired PUTs discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
msgid "# P2P PUT requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
msgid "# P2P PUT bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
msgid "# P2P GET requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
msgid "# P2P GET bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
msgid "# P2P FIND PEER requests processed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
msgid "# P2P GET requests ONLY routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
msgid "# Expired results discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
msgid "# P2P RESULTS received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
msgid "# P2P RESULT bytes received"
msgstr ""
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
msgid "# DHT requests combined"
msgstr ""
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+msgid "number of peers to start"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+msgid "Measure quality and performance of the DHT service."
+msgstr ""
+
#: src/dht/plugin_block_dht.c:189
#, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
msgid "need a valid IPv4 or IPv6 address\n"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
+msgstr ""
+
+#: src/dv/gnunet-dv.c:175
+msgid "Print information about DV state"
msgstr ""
#: src/exit/gnunet-daemon-exit.c:960
msgid "# ICMP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
msgid "# UDP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
msgid "# Bytes received from CADET"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
#, fuzzy
msgid "# UDP IP-exit requests received via cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
#, fuzzy
msgid "# UDP service requests received via cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
#, fuzzy
msgid "# TCP service creation requests received via cadet"
msgstr "# connessioni attive"
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
#, fuzzy
msgid "# TCP IP-exit creation requests received via cadet"
msgstr "# connessioni attive"
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
msgid "# TCP DATA requests dropped (no session)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
#, fuzzy
msgid "# TCP data requests received via cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
#, fuzzy
msgid "# ICMP IP-exit requests received via cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
#, fuzzy
msgid "# ICMP service requests received via cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr "# messaggi PONG decrittati"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr "# Messaggi PING trasmessi"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
msgid "# Packets received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
msgid "# Bytes received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr "Deve essere un numero"
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
msgid "Publishing failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Connessione stabilita con `%s'\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr "Impossibile avviare il servizio.\n"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr "impossibile calcolare l'hash"
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr "nome file troppo lungo"
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
msgid "could not connect to `fs' service"
msgstr ""
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr ""
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr ""
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, c-format
msgid "Recursive upload failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr ""
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, c-format
msgid "Datastore failure: %s"
msgstr ""
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr "Impossibile calcolare l'hash del file."
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr ""
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr ""
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
msgid "Malformed KSK URI (`++' not allowed)"
msgstr ""
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
msgid "Malformed KSK URI (quotes not balanced)"
msgstr ""
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
msgid "invalid argument"
msgstr "argomento non valido"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr ""
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr ""
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, c-format
msgid "Failed to load state: %s\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, c-format
msgid "Failed to save state to file %s\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, c-format
msgid "Publishing `%s'\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, c-format
msgid "Failed to run `%s'\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr ""
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr ""
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr ""
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr ""
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr ""
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-msgid "Special file-sharing operations"
-msgstr ""
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+msgid "Special file-sharing operations"
+msgstr ""
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "Errore interno."
#: src/fs/gnunet-publish.c:715
msgstr ""
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
-#: src/fs/gnunet-publish.c:911
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, c-format
msgid "Error searching: %s.\n"
msgstr ""
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
msgid "Could not create keyword URI from arguments.\n"
msgstr ""
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
msgid "Could not start searching.\n"
msgstr ""
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr ""
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr ""
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr ""
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
#, fuzzy
msgid "# replies received via cadet"
msgstr "# ACK ricevuti"
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
#, fuzzy
msgid "# replies received via cadet dropped"
msgstr "# ACK ricevuti"
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
msgid "# Pending requests created"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
msgid "# Pending requests active"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
msgid "# replies received and matched"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
msgid "# storage requests dropped due to high load"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
msgid "# Replies received from DHT"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
msgid "# Replies received from CADET"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
msgid "# GAP PUT messages received"
msgstr ""
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, c-format
msgid "Received malformed DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
msgid "No DNS server specified!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "`%s' non è un indirizzo IP valido.\n"
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-msgid "Specify the type of the record to lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:272
-msgid "Specify a timeout for the lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-msgid "GNUnet GNS resolver tool"
-msgstr ""
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "Generazione statistiche fallita\n"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
msgid "Failed to pass client to MHD\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, c-format
msgid "Unsupported socks version %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, c-format
msgid "Unsupported socks command %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, c-format
msgid "Unsupported socks address type %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+msgid "Specify the type of the record to lookup"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+msgid "GNUnet GNS resolver tool"
+msgstr ""
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr ""
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
msgid "Could not connect to DHT!\n"
msgstr ""
msgid "Unable to parse BOX record string `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/gns/plugin_rest_gns.c:442
-msgid "Gns REST API initialized\n"
-msgstr ""
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr ""
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "Impossibile avviare il servizio ' %s'\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr ""
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr ""
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
msgid "Failed to parse HELLO message: malformed\n"
msgstr ""
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr ""
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr ""
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
msgid "# active connections"
msgstr "# connessioni attive"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
msgid "bytes in hostlist"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr ""
msgid "hostlist requests refused (not ready)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
msgid "hostlist requests processed"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
msgid "# hostlist advertisements send"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "`%s' non è un indirizzo IP valido.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr "`%s' non è un indirizzo IP valido.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "`%s' non è un indirizzo IP valido.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "`%s' non è un indirizzo IP valido.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, c-format
msgid "Failed to create ego: %s\n"
msgstr ""
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, c-format
msgid "Failed to set default ego: %s\n"
msgstr ""
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-msgid "reduce output"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-msgid "display private keys as well"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr ""
-#: src/identity/plugin_rest_identity.c:1311
-msgid "Identity REST API initialized\n"
-msgstr ""
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr ""
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr ""
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, c-format
msgid "Could not access file `%s': %s\n"
msgstr ""
msgid "No records found for `%s'"
msgstr ""
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr "È necessario specificare un nome\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
#: src/namecache/gnunet-namecache.c:238
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr ""
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
msgid "GNUnet zone manipulation tool"
msgstr ""
#: src/namecache/plugin_namecache_flat.c:121
#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
#: src/peerstore/plugin_peerstore_flat.c:379
#: src/peerstore/plugin_peerstore_flat.c:538
#, fuzzy, c-format
msgstr "Generazione statistiche fallita\n"
#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
+#: src/namestore/plugin_namestore_heap.c:159
#: src/peerstore/plugin_peerstore_flat.c:394
#, fuzzy, c-format
msgid "Unable to get filesize: %s.\n"
msgstr "Generazione statistiche fallita\n"
#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
#: src/peerstore/plugin_peerstore_flat.c:406
#, fuzzy, c-format
msgid "Unable to read file: %s.\n"
msgid "Failed to setup database at `%s'\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
+msgid "Failed to start HTTP server\n"
+msgstr "Impossibile avviare il server HTTP\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
+msgid "Failed to connect to identity\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr ""
+
+#: src/namestore/gnunet-namestore.c:341
#, c-format
msgid "Adding record failed: %s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, c-format
msgid "Deleting record failed%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, c-format
msgid "Unsupported type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, c-format
msgid "Invalid time format `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, c-format
msgid "Invalid URI `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, c-format
msgid "Invalid nick `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, c-format
msgid "No default ego configured in identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, c-format
msgid "Cannot connect to identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Comando `%s' sconosciuto.\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "deve essere un indirizzo IPv6 valido"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
msgid "set the desired nick name for the zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
msgid "monitor changes in the namestore"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
msgid "determine our name for the given PKEY"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
msgid "name of the ego controlling the zone"
msgstr ""
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-msgid "Failed to start HTTP server\n"
-msgstr "Impossibile avviare il server HTTP\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-msgid "Failed to connect to identity\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
-msgid "Flat file database running\n"
-msgstr ""
-
-#: src/namestore/plugin_rest_namestore.c:919
-msgid "Namestore REST API initialized\n"
+#: src/namestore/plugin_namestore_heap.c:778
+msgid "heap file database running\n"
msgstr ""
#: src/nat-auto/gnunet-nat-auto.c:193
msgstr ""
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
msgid "Failed to connect to `gnunet-nat-server'\n"
msgstr ""
msgid "Detected external IP `%s'\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, c-format
msgid "Detected internal network address `%s'.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
msgid "upnpc not found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
msgid "Connection reversal request failed\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, c-format
msgid "Failed to start %s\n"
msgstr ""
msgid "`upnpc' command not found\n"
msgstr ""
-#: src/nse/gnunet-nse.c:123
-msgid "Show network size estimates from NSE service."
-msgstr ""
-
#: src/nse/gnunet-nse-profiler.c:849
msgid "limit to the number of connections to NSE services, 0 for none"
msgstr ""
msgid "Measure quality and performance of the NSE service."
msgstr ""
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
-msgid "Value is too large.\n"
+#: src/nse/gnunet-nse.c:122
+msgid "Show network size estimates from NSE service."
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, c-format
-msgid "Removing expired address of transport `%s'\n"
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
+msgid "Value is too large.\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:313
+#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
+msgid "%sPeer `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
+#: src/peerinfo-tool/gnunet-peerinfo.c:246
#, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
+msgid "\tExpires: %s \t %s\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr "# peer conosciuti"
+#: src/peerinfo-tool/gnunet-peerinfo.c:299
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
+#, fuzzy, c-format
+msgid "Failure: Cannot convert address to string for peer `%s'\n"
+msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/peerinfo/gnunet-service-peerinfo.c:492
+#: src/peerinfo-tool/gnunet-peerinfo.c:466
#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgid "Failure: Received invalid %s\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:658
+#: src/peerinfo-tool/gnunet-peerinfo.c:480
#, c-format
-msgid "Scanning directory `%s'\n"
+msgid "Failed to write HELLO with %u bytes to file `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:666
+#: src/peerinfo-tool/gnunet-peerinfo.c:499
#, c-format
-msgid "Still no peers found in `%s'!\n"
+msgid "Wrote %s HELLO containing %u addresses with %u bytes to file `%s'\n"
msgstr ""
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
+#: src/peerinfo-tool/gnunet-peerinfo.c:799
#, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
-msgstr ""
-
-#: src/peerinfo/peerinfo_api.c:220
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:239
-#, c-format
-msgid "%sPeer `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:246
-#, c-format
-msgid "\tExpires: %s \t %s\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
-#, fuzzy, c-format
-msgid "Failure: Cannot convert address to string for peer `%s'\n"
-msgstr "Impossibile avviare il servizio ' %s'\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:466
-#, c-format
-msgid "Failure: Received invalid %s\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:480
-#, c-format
-msgid "Failed to write HELLO with %u bytes to file `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:499
-#, c-format
-msgid "Wrote %s HELLO containing %u addresses with %u bytes to file `%s'\n"
-msgstr ""
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:799
-#, c-format
-msgid "I am peer `%s'.\n"
-msgstr "Io sono il peer '%s''.\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo.c:843
-msgid "don't resolve host names"
+msgid "I am peer `%s'.\n"
+msgstr "Io sono il peer '%s''.\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:843
+msgid "don't resolve host names"
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:848
msgid "Failed to load transport plugin for `%s'\n"
msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
-msgid "Peerinfo REST API initialized\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
+msgstr "# peer conosciuti"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, c-format
+msgid "Scanning directory `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:667
+#, c-format
+msgid "Still no peers found in `%s'!\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
+#, c-format
+msgid "Cleaning up directory `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
+
+#: src/peerinfo/peerinfo_api.c:220
+msgid "Failed to receive response from `PEERINFO' service."
msgstr ""
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, c-format
msgid "Could not load database backend `%s'\n"
msgstr ""
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
msgid "Unexpected iteration response, this should not happen.\n"
msgstr ""
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
msgid "Received a malformed response from service."
msgstr ""
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr ""
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "argomento non valido"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "Impossibile leggere il file"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "Generazione statistiche fallita\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Impossibile avviare il servizio ' %s'\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr ""
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+msgid "SQLite database running\n"
+msgstr ""
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr ""
msgid "# DNS replies dropped (too late?)"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, c-format
msgid "Ego is required\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, c-format
msgid "Requesting party key is required!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-msgid "The EGO to use"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-msgid "OpenID Connect REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-msgid "Identity Provider REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "Impossibile avviare il servizio.\n"
msgid "Search string `%s' is too long!\n"
msgstr ""
-#: src/rest/gnunet-rest-server.c:1039
-msgid "GNUnet REST server"
+#: src/rest-plugins/plugin_rest_copying.c:209
+msgid "COPYING REST API initialized\n"
msgstr ""
-#: src/rest/plugin_rest_config.c:265
-msgid "CONFIG REST API initialized\n"
+#: src/rest-plugins/plugin_rest_credential.c:1128
+msgid "GNS REST API initialized\n"
msgstr ""
-#: src/rest/plugin_rest_copying.c:209
-msgid "COPYING REST API initialized\n"
+#: src/rest-plugins/plugin_rest_gns.c:452
+msgid "Gns REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+msgid "Identity REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+msgid "Namestore REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+msgid "Identity Provider REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+msgid "Peerinfo REST API initialized\n"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:944
+msgid "GNUnet REST server"
msgstr ""
#: src/revocation/gnunet-revocation.c:129
msgid "Ego `%s' not found.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, c-format
msgid "Public key `%s' malformed\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
msgid "No filename to store revocation certificate given.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
msgid "No action specified. Nothing to do.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
msgid "Could not open revocation database file!"
msgstr ""
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
+#: src/rps/gnunet-rps-profiler.c:2959
+msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
+#: src/rps/gnunet-rps-profiler.c:2965
+msgid "timeout for the profiling"
msgstr ""
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
+#: src/rps/gnunet-rps-profiler.c:2971
+msgid "number of PeerIDs to request"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3086
-msgid "duration of the profiling"
+#: src/rps/gnunet-rps-profiler.c:2986
+msgid "Measure quality and performance of the RPS service."
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
-msgid "timeout for the profiling"
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3096
-msgid "number of PeerIDs to request"
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3112
-msgid "Measure quality and performance of the RPS service."
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
msgstr ""
#: src/scalarproduct/gnunet-scalarproduct.c:220
"A comma separated list of elements to compare as vector with our remote peer."
msgstr ""
-#: src/scalarproduct/gnunet-scalarproduct.c:363
-msgid ""
-"[Optional] peer to calculate our scalarproduct with. If this parameter is "
-"not given, the service will wait for a remote peer to compute the request."
+#: src/scalarproduct/gnunet-scalarproduct.c:363
+msgid ""
+"[Optional] peer to calculate our scalarproduct with. If this parameter is "
+"not given, the service will wait for a remote peer to compute the request."
+msgstr ""
+
+#: src/scalarproduct/gnunet-scalarproduct.c:369
+msgid "Transaction ID shared with peer."
+msgstr ""
+
+#: src/scalarproduct/gnunet-scalarproduct.c:379
+msgid "Calculate the Vectorproduct with a GNUnet peer."
+msgstr ""
+
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
+msgid "Connect to CADET failed\n"
+msgstr ""
+
+#: src/scalarproduct/scalarproduct_api.c:185
+msgid "Keys given to SCALARPRODUCT not unique!\n"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:616
+msgid "dkg start delay"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:622
+msgid "dkg timeout"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:628
+msgid "threshold"
+msgstr ""
+
+#: src/secretsharing/gnunet-secretsharing-profiler.c:633
+msgid "also profile decryption"
+msgstr ""
+
+#: src/set/gnunet-service-set.c:2005
+#, fuzzy
+msgid "Could not connect to CADET service\n"
+msgstr "Impossibile avviare il servizio.\n"
+
+#: src/set/gnunet-set-ibf-profiler.c:252
+msgid "number of element in set A-B"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:258
+msgid "number of element in set B-A"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:264
+msgid "number of common elements in A and B"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:270
+msgid "hash num"
+msgstr ""
+
+#: src/set/gnunet-set-ibf-profiler.c:276
+msgid "ibf size"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:444
+msgid "use byzantine mode"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:450
+msgid "force sending full set"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:456
+msgid "number delta operation"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:468
+msgid "operation to execute"
+msgstr ""
+
+#: src/set/gnunet-set-profiler.c:474
+msgid "element size"
+msgstr ""
+
+#: src/social/gnunet-social.c:1166
+msgid "--place missing or invalid.\n"
+msgstr ""
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
msgstr ""
-#: src/scalarproduct/gnunet-scalarproduct.c:369
-msgid "Transaction ID shared with peer."
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
msgstr ""
-#: src/scalarproduct/gnunet-scalarproduct.c:379
-msgid "Calculate the Vectorproduct with a GNUnet peer."
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
-msgid "Connect to CADET failed\n"
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
msgstr ""
-#: src/scalarproduct/scalarproduct_api.c:185
-msgid "Keys given to SCALARPRODUCT not unique!\n"
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:616
-msgid "dkg start delay"
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:622
-msgid "dkg timeout"
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:628
-msgid "threshold"
+#: src/social/gnunet-social.c:1304
+msgid "name or public key of ego"
msgstr ""
-#: src/secretsharing/gnunet-secretsharing-profiler.c:633
-msgid "also profile decryption"
+#: src/social/gnunet-social.c:1309
+msgid "wait for incoming messages"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
-#, fuzzy
-msgid "Could not connect to CADET service\n"
-msgstr "Impossibile avviare il servizio.\n"
+#: src/social/gnunet-social.c:1315
+msgid "GNS name"
+msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:267
-msgid "number of element in set A-B"
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:273
-msgid "number of element in set B-A"
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:280
-msgid "number of common elements in A and B"
+#: src/social/gnunet-social.c:1333
+msgid "method name"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
-msgid "hash num"
+#: src/social/gnunet-social.c:1339
+msgid "number of messages to replay from history"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:292
-msgid "ibf size"
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
msgstr ""
-#: src/set/gnunet-set-profiler.c:444
-msgid "use byzantine mode"
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
msgstr ""
-#: src/set/gnunet-set-profiler.c:450
-msgid "force sending full set"
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
msgstr ""
-#: src/set/gnunet-set-profiler.c:456
-msgid "number delta operation"
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
msgstr ""
-#: src/set/gnunet-set-profiler.c:468
-msgid "operation to execute"
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
msgstr ""
-#: src/set/gnunet-set-profiler.c:474
-msgid "element size"
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
msgstr ""
#: src/sq/sq.c:54
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
msgid "Failed to obtain statistics.\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, c-format
msgid "Failed to initialize watch routine\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, c-format
msgid "Invalid argument `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr ""
msgstr ""
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr ""
-#: src/testbed/gnunet_testbed_mpi_spawn.c:118
-msgid "Waiting for child to exit.\n"
-msgstr ""
-
-#: src/testbed/gnunet_testbed_mpi_spawn.c:241
-#, c-format
-msgid "Spawning process `%s'\n"
-msgstr ""
-
-#: src/testbed/gnunet-testbed-profiler.c:287
+#: src/testbed/gnunet-testbed-profiler.c:289
msgid "tolerate COUNT number of continious timeout failures"
msgstr ""
-#: src/testbed/gnunet-testbed-profiler.c:291
+#: src/testbed/gnunet-testbed-profiler.c:294
msgid ""
"run profiler in non-interactive mode where upon testbed setup the profiler "
"does not wait for a keystroke but continues to run until a termination "
"signal is received"
msgstr ""
-#: src/testbed/testbed_api.c:400
+#: src/testbed/gnunet_testbed_mpi_spawn.c:118
+msgid "Waiting for child to exit.\n"
+msgstr ""
+
+#: src/testbed/gnunet_testbed_mpi_spawn.c:241
+#, c-format
+msgid "Spawning process `%s'\n"
+msgstr ""
+
+#: src/testbed/testbed_api.c:410
#, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr ""
msgid "Hosts file %s cannot be read\n"
msgstr ""
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr ""
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr ""
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr ""
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr ""
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr ""
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr ""
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr ""
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, c-format
msgid "Failed to start `%s': %s\n"
msgstr ""
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, c-format
msgid "Failed to load configuration from %s\n"
msgstr ""
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr "# nodi in blacklist"
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
msgid "# connect requests issued to ATS"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
msgid "# HELLO messages gossipped"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
msgid "# friends connected"
msgstr "# amici connessi"
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, c-format
msgid "Found friend `%s' in configuration\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
msgid "# friends in configuration"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
msgid "# HELLO messages received"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, c-format
msgid "Cannot create path to `%s'\n"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr ""
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
msgid "# bytes payload discarded due to not connected peer"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
msgid "# bytes total received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
msgid "# bytes payload received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr "# connessioni attive"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
msgid "# DISCONNECT messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
msgid "# messages transmitted to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
msgid "# transmission failures for messages to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
msgid "# KEEPALIVE messages discarded (no session)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
msgid "# messages discarded due to lack of neighbour record"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "Generazione statistiche fallita\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Impossibile avviare il servizio.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "Impossibile avviare il servizio.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
#, fuzzy
msgid "# SYN_ACK messages sent"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Impossibile avviare il servizio ' %s'\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
#, fuzzy
msgid "# SYN messages received"
msgstr "# messaggi PONG ricevuti"
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
#, fuzzy
msgid "# SYN_ACK messages received"
msgstr "# messaggi PONG ricevuti"
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
#, fuzzy
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
#, fuzzy
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
#, fuzzy
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
#, fuzzy
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
#, fuzzy
msgid "# ACK messages received"
msgstr "# messaggi PONG ricevuti"
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
#, fuzzy
msgid "# quota messages ignored (malformed)"
msgstr "# messaggi PONG decrittati"
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
#, fuzzy
msgid "# QUOTA messages received"
msgstr "# messaggi PONG ricevuti"
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
msgid "# DISCONNECT messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
msgid "# disconnected from peer upon explicit request"
msgstr ""
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
msgid "# validations running"
msgstr ""
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
msgid "# PING message for different peer received"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
msgid "# HELLOs given to peerinfo"
msgstr ""
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+msgid "receive data from peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:626
+msgid "iterations"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:631
+msgid "number of messages to send"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:636
+msgid "message size to use"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+msgid "Direct access to transport service."
+msgstr ""
+
+#: src/transport/gnunet-transport.c:413
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, c-format
msgid "Failed to connect to `%s'\n"
msgstr ""
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr ""
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "# connessioni attive"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, fuzzy, c-format
msgid "Transmitting %u bytes\n"
msgstr "Avvio del servizio '%s' in corso\n"
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr ""
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
msgid "Connected to"
msgstr ""
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
msgid "Disconnected from"
msgstr ""
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, c-format
msgid "Received %u bytes\n"
msgstr ""
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, c-format
msgid "Peer `%s': %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr "Impossibile avviare il servizio.\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "Impossibile avviare il servizio.\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
msgid "Failed to connect to transport service\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
msgid "print information for all peers (instead of only connected peers)"
msgstr ""
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
#, fuzzy
msgid "disconnect from a peer"
msgstr "# amici connessi"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
msgid "provide information about all current connections (once)"
msgstr ""
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr ""
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
msgid "do not resolve hostnames"
msgstr ""
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-msgid "Direct access to transport service."
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-msgid "receive data from peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:586
-msgid "iterations"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:591
-msgid "number of messages to send"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:596
-msgid "message size to use"
-msgstr ""
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, c-format
msgid "Shutting down plugin `%s'\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, c-format
msgid "Maximum number of requests is %u\n"
msgstr ""
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
msgid "# TCP sessions active"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
msgid "# bytes currently in TCP buffers"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
msgid "# bytes discarded by TCP (disconnect)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
msgid "# bytes discarded by TCP (timeout)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
msgid "# bytes transmitted via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
msgid "# TCP WELCOME messages received"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr "# connessioni attive"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
msgid "# TCP server connect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
msgid "Failed to start service.\n"
msgstr "Impossibile avviare il servizio.\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-#, fuzzy
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr "# messaggi PONG ricevuti"
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "Generazione statistiche fallita\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
msgid "must be valid IPv4 address"
msgstr "deve essere un indirizzo IPv4 valido"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "deve essere un indirizzo IPv4 valido"
msgid "Failed to create UDP network sockets\n"
msgstr "Generazione statistiche fallita\n"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+#, fuzzy
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr "# messaggi PONG ricevuti"
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr ""
+#: src/transport/plugin_transport_xt.c:4010
+#, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4014
+msgid "XT transport not listening on any port (client only)\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4018
+#, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# connessioni attive"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "Generazione statistiche fallita\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "Generazione statistiche fallita\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "Generazione statistiche fallita\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr ""
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, c-format
msgid "Unknown address family %d\n"
msgstr ""
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
msgid "Malformed configuration, exit ...\n"
msgstr ""
msgid "Could not access configuration file `%s'\n"
msgstr ""
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "DEBUG"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "INFO"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr ""
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr ""
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "ERRORE"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr "NESSUNA"
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr ""
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr "NON VALIDO"
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr "indirizzo sconosciuto"
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr "indirizzo non valido"
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr ""
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr ""
msgid "Could not load peer's private key\n"
msgstr ""
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr ""
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr ""
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr ""
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr ""
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr ""
msgid "Sent DNS request to %s\n"
msgstr ""
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr ""
msgid "%s: option `--%s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr ""
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr ""
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr ""
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr ""
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr ""
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr ""
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr ""
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr ""
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, c-format
msgid "Use %s to get a list of options.\n"
msgstr ""
-#: src/util/getopt.c:987
-#, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr ""
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr ""
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr ""
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
msgstr ""
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr ""
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr ""
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
msgid "use configuration file FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr ""
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, c-format
msgid "failed to load configuration defaults"
msgstr ""
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, c-format
msgid "%s or %s argument is required\n"
msgstr ""
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr ""
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
msgid "print available configuration sections"
msgstr ""
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
msgid "Manipulate GNUnet configuration files"
msgstr ""
msgid "Failed to open `%s': %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, c-format
msgid ""
"\n"
"Failed to write to `%s': %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, c-format
msgid ""
"\n"
"\n"
"Completato!\n"
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr ""
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr ""
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, c-format
msgid "Could not read hostkey file: %s\n"
msgstr ""
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
msgid "Manipulate GNUnet private ECC key files"
msgstr ""
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
msgid "Manipulate GNUnet proof of work files"
msgstr ""
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr ""
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr ""
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr ""
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr ""
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr ""
-#: src/util/program.c:255
+#: src/util/program.c:283
#, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr ""
-#: src/util/program.c:272
+#: src/util/program.c:301
#, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr ""
-#: src/util/program.c:287
+#: src/util/program.c:318
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr ""
msgid "Could not resolve our FQDN: %s\n"
msgstr ""
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr ""
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr ""
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr "µs"
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr "per sempre"
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr "0 ms"
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "ms"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "s"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr ""
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "o"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
msgid "day"
msgstr "giorno"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
msgid "days"
msgstr "giorni"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr ""
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr ""
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr ""
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, c-format
msgid "Malformed port policy `%s'\n"
msgstr ""
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr ""
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr ""
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, c-format
msgid "Invalid format: `%s'\n"
msgstr ""
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr ""
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr ""
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, c-format
msgid "Wrong format `%s' for network\n"
msgstr ""
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
msgid "# Active channels"
msgstr "# Canali attivi"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
msgid "# Messages dropped in cadet queue (overflow)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
#, fuzzy
msgid "# ICMP packets received from cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
#, fuzzy
msgid "# UDP packets received from cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
#, fuzzy
msgid "# TCP packets received from cadet"
msgstr "# messaggi PONG ricevuti"
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr "# messaggi PONG decrittati"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
msgid "# Packets dropped (channel not yet online)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
msgid "# Packets received from TUN interface"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
msgid "# Active destinations"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
msgid "Must specify valid IPv6 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
msgid "Must specify valid IPv4 address"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr ""
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
msgid "Failed to connect to the namestore!\n"
msgstr ""
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr ""
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr ""
+#, fuzzy
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "Connessione stabilita con `%s'\n"
+
+#, fuzzy
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "`%s' non è un indirizzo IP valido.\n"
+
+#, fuzzy
+#~ msgid "Unable to parse CAA record string `%s'\n"
+#~ msgstr "Impossibile avviare il servizio ' %s'\n"
+
#~ msgid "Request timed out"
#~ msgstr "Richiesta scaduta"
#~ msgid "Failure: Did not receive %s\n"
#~ msgstr "Generazione statistiche fallita\n"
-#, fuzzy
-#~| msgid "Failed to start service.\n"
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "Impossibile avviare il servizio.\n"
-
-#, fuzzy
-#~| msgid "Failed to start service.\n"
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr "Impossibile avviare il servizio.\n"
-
#, fuzzy
#~| msgid "Unknown command `%s'\n"
#~ msgid "Unknown operator: %c\n"
#~ msgstr "Comando `%s' sconosciuto.\n"
-#, fuzzy
-#~| msgid "Failed to read file"
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "Impossibile leggere il file"
-
-#, fuzzy
-#~| msgid "Failed to read file"
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "Impossibile leggere il file"
-
-#, fuzzy
-#~| msgid "Failed to start service.\n"
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr "Impossibile avviare il servizio.\n"
-
#, fuzzy
#~| msgid "# SYN messages received"
#~ msgid "# SUC responder result messages received"
msgstr ""
"Project-Id-Version: GNUnet 0.7.0b\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2006-01-21 17:16+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
-"Language: sv\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: sv\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, fuzzy, c-format
msgid "Failed to remove configuration file %s\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, fuzzy, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr "Filformatsfel (inte en GNUnet-katalog?)\n"
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr ""
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
#, fuzzy
msgid "We disconnected from ARM before we could send a request"
msgstr "# av anslutna parter"
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
#, fuzzy
msgid "Unknown request status"
msgstr "Okänd operation \"%s\"\n"
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "# byte krypterade"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
#, fuzzy
msgid "is starting"
msgstr "\"%s\" startar\n"
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "# byte krypterade"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
#, fuzzy
msgid "is starting already"
msgstr "\"%s\" startar\n"
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "\"%s\" startar\n"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
#, fuzzy
msgid "is started already"
msgstr "\"%s\" startar\n"
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "\"%s\" startar\n"
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
#, fuzzy
msgid "service is not known to ARM"
msgstr "\"%s\" är inte en fil.\n"
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "Misslyckades att starta samling.\n"
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
msgid "service cannot be manipulated because ARM is shutting down"
msgstr ""
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "Okänd operation \"%s\"\n"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, fuzzy, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr "Misslyckades att starta samling.\n"
msgid "Failed to stop the ARM service: %s\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, fuzzy, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, fuzzy, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, fuzzy, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr "Fel vid %s:%d.\n"
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, fuzzy, c-format
msgid "Failed to request a list of services: %s\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
#, fuzzy
msgid "Error communicating with ARM. ARM not running?\n"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
#, fuzzy
msgid "Running services:\n"
msgstr "Startade samling \"%s\".\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, fuzzy, c-format
msgid "Starting %s...\n"
msgstr "Startade samling \"%s\".\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr ""
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, fuzzy, c-format
msgid "Unknown status %u for service %s.\n"
msgstr "Okänd operation \"%s\"\n"
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
msgid "stop all GNUnet services"
msgstr ""
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
msgid "start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
msgid "stop and start all GNUnet default services"
msgstr ""
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr ""
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr ""
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr ""
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
#, fuzzy
msgid "list currently running services"
msgstr "Startade samling \"%s\".\n"
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, fuzzy, c-format
msgid "Using `%s' instead\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, fuzzy, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, fuzzy, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-#, fuzzy
-msgid "print logging"
-msgstr "Startade samling \"%s\".\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, fuzzy, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr "Kunde inte initiera SQLite.\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, fuzzy, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, fuzzy, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2699
-#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
msgstr ""
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr "Kunde inte spara konfigurationsfil \"%s\":"
+msgid "Start logging `%s'\n"
+msgstr "Startade samling \"%s\".\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, fuzzy, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr ""
-
-#: src/ats-tests/ats-testing-log.c:892
-#, fuzzy, c-format
-msgid "Start logging `%s'\n"
-msgstr "Startade samling \"%s\".\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr ""
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr "Skriv ut information om GNUnets motparter."
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
+msgid ""
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3306
+#, fuzzy
+msgid "print logging"
+msgstr "Startade samling \"%s\".\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
+msgstr ""
+
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, fuzzy, c-format
+msgid "Failed to initialize solver `%s'!\n"
+msgstr "Kunde inte initiera SQLite.\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:304
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:359
+#, c-format
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1870
+#, fuzzy, c-format
+msgid "Adding address for peer `%s' multiple times\n"
+msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
+
+#: src/ats/plugin_ats_mlp.c:1914
+#, fuzzy, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
+msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
+
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "Kunde inte spara konfigurationsfil \"%s\":"
+
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
+msgid ""
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr "Kunde inte spara konfigurationsfil \"%s\":"
+
#: src/auction/gnunet-auction-create.c:163
msgid "description of the item to be sold"
msgstr ""
#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
#, fuzzy
msgid "help text"
msgstr "hjälptext för -t"
msgid "Extra arguments are not applicable in combination with this option.\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/cadet/gnunet-cadet.c:795
#, fuzzy, c-format
msgid "Invalid target `%s'\n"
msgstr "Ogiltigt argument: \"%s\"\n"
-#: src/cadet/gnunet-cadet.c:829
+#: src/cadet/gnunet-cadet.c:832
#, fuzzy
msgid "No action requested\n"
msgstr "Samling stoppad.\n"
-#: src/cadet/gnunet-cadet.c:854
+#: src/cadet/gnunet-cadet.c:857
#, fuzzy
msgid "Provide information about a particular connection"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/cadet/gnunet-cadet.c:858
+#: src/cadet/gnunet-cadet.c:861
msgid "Activate echo mode"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
+#: src/cadet/gnunet-cadet.c:866
msgid "Listen for connections using a shared secret among sender and recipient"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
+#: src/cadet/gnunet-cadet.c:871
#, fuzzy
msgid "Provide information about a patricular peer"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/cadet/gnunet-cadet.c:872
+#: src/cadet/gnunet-cadet.c:875
#, fuzzy
msgid "Provide information about all peers"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/cadet/gnunet-cadet.c:876
+#: src/cadet/gnunet-cadet.c:879
#, fuzzy
msgid "Provide information about all tunnels"
msgstr "Skriv ut information om GNUnets motparter."
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgid "Failed to allocate %u bytes for second packet\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, fuzzy, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr "Kunde inte ansluta till gnunetd.\n"
msgid "Could not start playback audio helper.\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr "# av anslutna parter"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
#, fuzzy
msgid "key received"
msgstr "# sessionnycklar vägrade"
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
#, fuzzy
msgid "connection established"
msgstr "Samling stoppad.\n"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "Okänt fel"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr ""
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Ogiltiga kommandoradsargument:\n"
msgid "Failed to connect to CORE service!\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
#, fuzzy
msgid "provide information about all current connections (continuously)"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
#, fuzzy
msgid "Print information about connected peers."
msgstr "Skriv ut information om GNUnets motparter."
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, fuzzy, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
#, fuzzy
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "GNUnet-konfiguration"
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "\"%s\" är inte en fil.\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr "# byte krypterade"
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr "# byte dekrypterade"
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
#, fuzzy
msgid "# PAYLOAD dropped (out of order)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
#, fuzzy
msgid "# PING messages transmitted"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
#, fuzzy
msgid "# duplicate ephemeral keys ignored"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
#, fuzzy
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
#, fuzzy
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
#, fuzzy
msgid "# PING messages received"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
#, fuzzy
msgid "# PING messages dropped (out of order)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
#, fuzzy
msgid "# PONG messages created"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
#, fuzzy
msgid "# sessions terminated by timeout"
msgstr "# byte kastade via TCP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
#, fuzzy
msgid "# keepalive messages sent"
msgstr "# PING-meddelanden i klartext skickade"
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
#, fuzzy
msgid "# PONG messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
#, fuzzy
msgid "# PONG messages dropped (connection down)"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
#, fuzzy
msgid "# PONG messages dropped (out of order)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
#, fuzzy
msgid "# PONG messages decrypted"
msgstr "# PING-meddelanden skapade"
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
#, fuzzy
msgid "# session keys confirmed via PONG"
msgstr "# sessionnycklar vägrade"
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
#, fuzzy
msgid "# timeouts prevented via PONG"
msgstr "# byte mottogs via TCP"
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
#, fuzzy
msgid "# rekey operations confirmed via PONG"
msgstr "# sessionnycklar vägrade"
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
#, fuzzy
msgid "# DATA message dropped (out of order)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
#, fuzzy
msgid "# sessions terminated by key expiration"
msgstr "# byte kastade via TCP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
#, fuzzy
msgid "# bytes dropped (duplicates)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
#, fuzzy
msgid "# bytes dropped (out of sequence)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
#, fuzzy
msgid "# bytes dropped (ancient message)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
#, fuzzy
msgid "# bytes of payload decrypted"
msgstr "# byte dekrypterade"
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
#, fuzzy
msgid "# peers connected"
msgstr "# av anslutna parter"
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
msgid "# type map refreshes sent"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
#, fuzzy
msgid "# outdated typemap confirmations received"
msgstr "Kunde inte spara konfiguration!"
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
#, fuzzy
msgid "# valid typemap confirmations received"
msgstr "Kunde inte spara konfiguration!"
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
#, fuzzy
msgid "# type maps received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, fuzzy, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr "\"%s\": okänd tjänst: %s\n"
msgid "GNUnet credential resolver tool"
msgstr "Spåra GNUnets nätverkstopologi."
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, fuzzy, c-format
msgid "Failed to connect to GNS\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, fuzzy, c-format
msgid "Failed to connect to namestore\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/credential/plugin_rest_credential.c:1128
-#, fuzzy
-msgid "GNS REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
#, fuzzy
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr "\"%s\" till \"%s\" misslyckades vid %s:%d med fel: %s\n"
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
#, fuzzy
msgid "Failed to drop table from database.\n"
msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n"
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr ""
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, fuzzy, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr "Kunde inte initiera SQLite.\n"
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
msgid "Sqlite database running\n"
msgstr ""
msgstr ""
#: src/dht/gnunet-dht-get.c:280
-msgid "Issue a GET request to the GNUnet DHT, prints results."
-msgstr ""
-
-#: src/dht/gnunet-dht-monitor.c:319
-msgid "how long should the monitor command run"
-msgstr ""
-
-#: src/dht/gnunet-dht-monitor.c:324 src/fs/gnunet-download.c:372
-#: src/nse/gnunet-nse-profiler.c:878
-msgid "be verbose (print progress information)"
-msgstr ""
-
-#: src/dht/gnunet-dht-monitor.c:337
-msgid "Prints all packets that go through the DHT."
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, fuzzy, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr "Maximalt antal chattklienter uppnått.\n"
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-#, fuzzy
-msgid "number of peers to start"
-msgstr "antal iterationer"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
+msgid "Issue a GET request to the GNUnet DHT, prints results."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
+#: src/dht/gnunet-dht-monitor.c:319
+msgid "how long should the monitor command run"
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
+#: src/dht/gnunet-dht-monitor.c:324 src/fs/gnunet-download.c:372
+#: src/nse/gnunet-nse-profiler.c:878
+msgid "be verbose (print progress information)"
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+#: src/dht/gnunet-dht-monitor.c:337
+msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:1009
-#, fuzzy
-msgid "Measure quality and performance of the DHT service."
-msgstr "Kan inte tillgå tjänsten"
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr "# PING-meddelanden skapade"
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
#, fuzzy
msgid "# requests TTL-dropped"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
msgid "# Peer selection failed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
#, fuzzy
msgid "# PUT requests routed"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
#, fuzzy
msgid "# PUT messages queued for transmission"
msgstr "# PING-meddelanden skapade"
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
#, fuzzy
msgid "# P2P messages dropped due to full queue"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
#, fuzzy
msgid "# GET requests routed"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
#, fuzzy
msgid "# GET messages queued for transmission"
msgstr "# PING-meddelanden skapade"
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
#, fuzzy
msgid "# RESULT messages queued for transmission"
msgstr "# PING-meddelanden skapade"
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
msgid "# Expired PUTs discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
#, fuzzy
msgid "# P2P PUT requests received"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
#, fuzzy
msgid "# P2P PUT bytes received"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
#, fuzzy
msgid "# P2P GET requests received"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
#, fuzzy
msgid "# P2P GET bytes received"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
#, fuzzy
msgid "# P2P FIND PEER requests processed"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
#, fuzzy
msgid "# P2P GET requests ONLY routed"
msgstr "# byte mottogs via TCP"
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
msgid "# Expired results discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
#, fuzzy
msgid "# P2P RESULTS received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
#, fuzzy
msgid "# P2P RESULT bytes received"
msgstr "# krypterade PONG-meddelanden mottagna"
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
#, fuzzy
msgid "# DHT requests combined"
msgstr "# byte mottogs via TCP"
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, fuzzy, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr "Maximalt antal chattklienter uppnått.\n"
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+#, fuzzy
+msgid "number of peers to start"
+msgstr "antal iterationer"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+#, fuzzy
+msgid "Measure quality and performance of the DHT service."
+msgstr "Kan inte tillgå tjänsten"
+
#: src/dht/plugin_block_dht.c:189
#, fuzzy, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
#, fuzzy
msgid "need a valid IPv4 or IPv6 address\n"
msgstr "Ogiltigt svar på \"%s\".\n"
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
msgstr ""
+#: src/dv/gnunet-dv.c:175
+#, fuzzy
+msgid "Print information about DV state"
+msgstr "Skriv ut information om GNUnets motparter."
+
#: src/exit/gnunet-daemon-exit.c:960
#, fuzzy
msgid "# TCP packets sent via TUN"
msgid "# ICMP packets sent via TUN"
msgstr "# byte skickade via UDP"
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
#, fuzzy
msgid "# UDP packets sent via TUN"
msgstr "# byte skickade via UDP"
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
#, fuzzy
msgid "# Bytes received from CADET"
msgstr "# byte mottagna via HTTP"
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
#, fuzzy
msgid "# UDP IP-exit requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
#, fuzzy
msgid "# UDP service requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
#, fuzzy
msgid "# TCP service creation requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
#, fuzzy
msgid "# TCP IP-exit creation requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
#, fuzzy
msgid "# TCP DATA requests dropped (no session)"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
#, fuzzy
msgid "# TCP data requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
#, fuzzy
msgid "# ICMP IP-exit requests received via cadet"
msgstr "# byte mottogs via TCP"
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
#, fuzzy
msgid "# ICMP service requests received via cadet"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr "# PING-meddelanden skapade"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr "# byte skickade av typen %d"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
#, fuzzy
msgid "# Packets received from TUN"
msgstr "# byte mottagna via HTTP"
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
#, fuzzy
msgid "# Bytes received from TUN"
msgstr "# byte mottagna via HTTP"
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, fuzzy, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Kan inte öppna konfigurationsfil \"%s\".\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, fuzzy, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr "Indexering av fil \"%s\" misslyckades. Försöker att infoga fil...\n"
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr ""
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr ""
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
#, fuzzy
msgid "could not connect to `fs' service"
msgstr "Kunde inte ansluta till gnunetd.\n"
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, fuzzy, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, fuzzy, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, fuzzy, c-format
msgid "Recursive upload failed: %s"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr ""
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr " Anslutning misslyckades (fel?)\n"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, fuzzy, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr "Ogiltig URL \"%s\" (måste börja med \"%s\")\n"
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
#, fuzzy
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr "Ogiltig URL \"%s\" (måste börja med \"%s\")\n"
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
#, fuzzy
msgid "Malformed KSK URI (`++' not allowed)"
msgstr "Ogiltig URL \"%s\" (måste börja med \"%s\")\n"
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
#, fuzzy
msgid "Malformed KSK URI (quotes not balanced)"
msgstr "Ogiltig URL \"%s\" (måste börja med \"%s\")\n"
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "Ogiltigt argument: \"%s\"\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr ""
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr "Inga nyckelord angivna!\n"
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, fuzzy, c-format
msgid "Failed to load state: %s\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, fuzzy, c-format
msgid "Failed to save state to file %s\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, fuzzy, c-format
msgid "Publishing `%s'\n"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, fuzzy, c-format
msgid "Failed to run `%s'\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, fuzzy, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr "Du måste ange en och endast en fil att avindexera.\n"
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr ""
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr "ange prioritet för innehållet"
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr ""
msgstr "Uppladdning vägrades!"
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, fuzzy, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr ""
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr ""
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-#, fuzzy
-msgid "Special file-sharing operations"
-msgstr "Visa alla alternativ"
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+#, fuzzy
+msgid "Special file-sharing operations"
+msgstr "Visa alla alternativ"
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "=\tFel vid läsning av katalog.\n"
#: src/fs/gnunet-publish.c:715
msgstr "Kommando \"%s\" kräver ett argument (\"%s\").\n"
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
-#: src/fs/gnunet-publish.c:911
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, fuzzy, c-format
msgid "Error searching: %s.\n"
msgstr "Fel vid lämning av DHT.\n"
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
#, fuzzy
msgid "Could not create keyword URI from arguments.\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
#, fuzzy
msgid "Could not start searching.\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr ""
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "GNUnet-konfiguration"
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
#, fuzzy
msgid "# replies received via cadet"
msgstr "# byte mottagna av typen %d"
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
#, fuzzy
msgid "# replies received via cadet dropped"
msgstr "# byte mottagna av typen %d"
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
#, fuzzy
msgid "# Pending requests created"
msgstr "# byte mottogs via TCP"
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
msgid "# Pending requests active"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
#, fuzzy
msgid "# replies received and matched"
msgstr "# byte mottagna av typen %d"
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
#, fuzzy
msgid "# storage requests dropped due to high load"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
#, fuzzy
msgid "# Replies received from DHT"
msgstr "# byte mottagna via HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
#, fuzzy
msgid "# Replies received from CADET"
msgstr "# byte mottagna via HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
#, fuzzy
msgid "# GAP PUT messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
#, fuzzy
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, fuzzy, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, fuzzy, c-format
msgid "Received malformed DNS request from %s\n"
msgstr "Mottog ogiltig \"%s\" begäran (storlek %d)\n"
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, fuzzy, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr "Mottog okänd typ av begäran %d vid %s:%d\n"
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
#, fuzzy
msgid "No DNS server specified!\n"
msgstr "Inga nyckelord angivna!\n"
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "\"%s\" är inte tillgänglig."
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-#, fuzzy
-msgid "Specify the type of the record to lookup"
-msgstr "ange prioritet för innehållet"
-
-#: src/gns/gnunet-gns.c:272
-#, fuzzy
-msgid "Specify a timeout for the lookup"
-msgstr "ange prioritet för innehållet"
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-#, fuzzy
-msgid "GNUnet GNS resolver tool"
-msgstr "Spåra GNUnets nätverkstopologi."
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, fuzzy, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, fuzzy, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, fuzzy, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, fuzzy, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr "Kunde inte initiera SQLite.\n"
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, fuzzy, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, fuzzy, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, fuzzy, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, fuzzy, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr "Kunde inte skapa användarkonto:"
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, fuzzy, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
#, fuzzy
msgid "Failed to pass client to MHD\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, fuzzy, c-format
msgid "Unsupported socks version %d\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, fuzzy, c-format
msgid "Unsupported socks command %d\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, fuzzy, c-format
msgid "Unsupported socks address type %d\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, fuzzy, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+#, fuzzy
+msgid "Specify the type of the record to lookup"
+msgstr "ange prioritet för innehållet"
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+#, fuzzy
+msgid "GNUnet GNS resolver tool"
+msgstr "Spåra GNUnets nätverkstopologi."
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr "Misslyckades att ansluta till gnunetd.\n"
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
#, fuzzy
msgid "Could not connect to DHT!\n"
msgstr "Kunde inte ansluta till gnunetd.\n"
msgid "Unable to parse BOX record string `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gns/plugin_rest_gns.c:442
-#, fuzzy
-msgid "Gns REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, fuzzy, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr "Ogiltigt svar på \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, fuzzy, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, fuzzy, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, fuzzy, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, fuzzy, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, fuzzy, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, fuzzy, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, fuzzy, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, fuzzy, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, fuzzy, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr "Ogiltigt svar på \"%s\".\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, fuzzy, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
#, fuzzy
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr "Kunde inte spara konfiguration!"
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
#, fuzzy
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr "Kunde inte spara konfiguration!"
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
#, fuzzy
msgid "Failed to parse HELLO message: malformed\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
#, fuzzy
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr ""
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, fuzzy, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, fuzzy, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr "Ogiltigt meddelande mottogs den %s:%d."
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, fuzzy, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, fuzzy, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr ""
"Uppladdning av \"%s\" klar, aktuell genomsnittshastighet är %8.3f kbps.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, fuzzy, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr ""
"Uppladdning av \"%s\" klar, aktuell genomsnittshastighet är %8.3f kbps.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
#, fuzzy
msgid "# active connections"
msgstr "Nätverksanslutning"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, fuzzy, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, fuzzy, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr "antal meddelanden att använda per iteration"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, fuzzy, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, fuzzy, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, fuzzy, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
#, fuzzy
msgid "bytes in hostlist"
msgstr "# byte krypterade"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr ""
msgid "hostlist requests refused (not ready)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
msgid "hostlist requests processed"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
msgid "# hostlist advertisements send"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
#, fuzzy
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Kunde inte komma åt namnrymdsinformation.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, fuzzy, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr "Ogiltiga argument. Avslutar.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, fuzzy, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "\"%s\" är inte tillgänglig."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr "\"%s\" är inte tillgänglig."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "\"%s\" är inte tillgänglig."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "\"%s\" är inte tillgänglig."
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, fuzzy, c-format
msgid "Failed to create ego: %s\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, fuzzy, c-format
msgid "Failed to set default ego: %s\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-msgid "reduce output"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-msgid "display private keys as well"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, fuzzy, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, fuzzy, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, fuzzy, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, fuzzy, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/identity/plugin_rest_identity.c:1311
-#, fuzzy
-msgid "Identity REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, fuzzy, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr "Försöker använda fil \"%s\" för MySQL-konfiguration.\n"
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, fuzzy, c-format
msgid "Could not access file `%s': %s\n"
msgstr "Kunde inte köra \"%s\": %s\n"
msgid "No records found for `%s'"
msgstr "%d filer hittades i katalog.\n"
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr "Du måste ange en mottagare!\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
-#: src/namecache/gnunet-namecache.c:238
+#: src/namecache/gnunet-namecache.c:238
+#, fuzzy
+msgid "spezifies the public key of the zone to look in"
+msgstr "ange prioritet för innehållet"
+
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
+#, fuzzy
+msgid "GNUnet zone manipulation tool"
+msgstr "GNUnet-konfiguration"
+
+#: src/namecache/namecache_api.c:296
+msgid "Namecache failed to cache block"
+msgstr ""
+
+#: src/namecache/namecache_api.c:383
+#, fuzzy
+msgid "Error communicating with namecache service"
+msgstr "Skriv ut information om GNUnets motparter."
+
+#: src/namecache/plugin_namecache_flat.c:121
+#: src/namecache/plugin_namecache_flat.c:255
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
+#: src/peerstore/plugin_peerstore_flat.c:379
+#: src/peerstore/plugin_peerstore_flat.c:538
+#, fuzzy, c-format
+msgid "Unable to initialize file: %s.\n"
+msgstr "Kunde inte initiera SQLite.\n"
+
+#: src/namecache/plugin_namecache_flat.c:132
+#: src/namestore/plugin_namestore_heap.c:159
+#: src/peerstore/plugin_peerstore_flat.c:394
+#, fuzzy, c-format
+msgid "Unable to get filesize: %s.\n"
+msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
+
+#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
+#: src/peerstore/plugin_peerstore_flat.c:406
+#, fuzzy, c-format
+msgid "Unable to read file: %s.\n"
+msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
+
+#: src/namecache/plugin_namecache_flat.c:410
+msgid "flat plugin running\n"
+msgstr ""
+
+#: src/namecache/plugin_namecache_sqlite.c:183
+#: src/namecache/plugin_namecache_sqlite.c:197
+#: src/namestore/plugin_namestore_sqlite.c:219
+#: src/namestore/plugin_namestore_sqlite.c:230
+#, fuzzy, c-format
+msgid "Failed to setup database at `%s'\n"
+msgstr "Fel vid %s:%d.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, fuzzy, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, fuzzy, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, fuzzy, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, fuzzy, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
#, fuzzy
-msgid "specifies the public key of the zone to look in"
-msgstr "ange prioritet för innehållet"
+msgid "Failed to start HTTP server\n"
+msgstr "Misslyckades att starta samling.\n"
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
#, fuzzy
-msgid "GNUnet zone manipulation tool"
-msgstr "GNUnet-konfiguration"
+msgid "Failed to connect to identity\n"
+msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/namecache/namecache_api.c:296
-msgid "Namecache failed to cache block"
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
msgstr ""
-#: src/namecache/namecache_api.c:383
-#, fuzzy
-msgid "Error communicating with namecache service"
-msgstr "Skriv ut information om GNUnets motparter."
-
-#: src/namecache/plugin_namecache_flat.c:121
-#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
-#: src/peerstore/plugin_peerstore_flat.c:379
-#: src/peerstore/plugin_peerstore_flat.c:538
-#, fuzzy, c-format
-msgid "Unable to initialize file: %s.\n"
-msgstr "Kunde inte initiera SQLite.\n"
-
-#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
-#: src/peerstore/plugin_peerstore_flat.c:394
-#, fuzzy, c-format
-msgid "Unable to get filesize: %s.\n"
-msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-
-#: src/namecache/plugin_namecache_flat.c:151
-#: src/peerstore/plugin_peerstore_flat.c:406
-#, fuzzy, c-format
-msgid "Unable to read file: %s.\n"
-msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-
-#: src/namecache/plugin_namecache_flat.c:410
-msgid "flat plugin running\n"
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
msgstr ""
-#: src/namecache/plugin_namecache_sqlite.c:183
-#: src/namecache/plugin_namecache_sqlite.c:197
-#: src/namestore/plugin_namestore_sqlite.c:219
-#: src/namestore/plugin_namestore_sqlite.c:230
-#, fuzzy, c-format
-msgid "Failed to setup database at `%s'\n"
-msgstr "Fel vid %s:%d.\n"
-
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore.c:341
#, fuzzy, c-format
msgid "Adding record failed: %s\n"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, fuzzy, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, fuzzy, c-format
msgid "Deleting record failed%s%s\n"
msgstr ""
"\n"
"Fel vid uppladdning av fil: %s\n"
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, fuzzy, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr "Konfigurationsfil \"%s\" skapad.\n"
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, fuzzy, c-format
msgid "Unsupported type `%s'\n"
msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, fuzzy, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr "%s: symbolvärde \"%s\" ogiltigt för %s\n"
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, fuzzy, c-format
msgid "Invalid time format `%s'\n"
msgstr "Ogiltigt format för IP: \"%s\"\n"
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, fuzzy, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr "Ogiltigt argument: \"%s\"\n"
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, fuzzy, c-format
msgid "Invalid URI `%s'\n"
msgstr "Ogiltiga argument: "
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, fuzzy, c-format
msgid "Invalid nick `%s'\n"
msgstr "Ogiltiga argument: "
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, fuzzy, c-format
msgid "No default ego configured in identity service\n"
msgstr "\"%s\": okänd tjänst: %s\n"
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, fuzzy, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr "Onödiga argument (ignorerade).\n"
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, fuzzy, c-format
msgid "Cannot connect to identity service\n"
msgstr "Kunde inte ansluta till gnunetd.\n"
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, fuzzy, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Okänd operation \"%s\"\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "Ogiltigt format för IP: \"%s\"\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
#, fuzzy
msgid "set the desired nick name for the zone"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
#, fuzzy
msgid "monitor changes in the namestore"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
#, fuzzy
msgid "determine our name for the given PKEY"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
#, fuzzy
msgid "name of the ego controlling the zone"
msgstr "Visa värde av alternativet"
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, fuzzy, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr "Kommando \"%s\" stöds ej. Avbryter.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, fuzzy, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, fuzzy, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, fuzzy, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-#, fuzzy
-msgid "Failed to start HTTP server\n"
-msgstr "Misslyckades att starta samling.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-#, fuzzy
-msgid "Failed to connect to identity\n"
-msgstr "Misslyckades att ansluta till gnunetd.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, fuzzy, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
-msgid "Flat file database running\n"
+#: src/namestore/plugin_namestore_heap.c:778
+msgid "heap file database running\n"
msgstr ""
-#: src/namestore/plugin_rest_namestore.c:919
-#, fuzzy
-msgid "Namestore REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
#: src/nat-auto/gnunet-nat-auto.c:193
#, fuzzy
msgid "Suggested configuration changes:\n"
msgstr "GNUnet-konfiguration"
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
#, fuzzy
msgid "Failed to connect to `gnunet-nat-server'\n"
msgid "Detected external IP `%s'\n"
msgstr "Mottog ogiltig RPC \"%s\".\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, c-format
msgid "Detected internal network address `%s'.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
#, fuzzy
msgid "upnpc not found\n"
msgstr "Kommando \"%s\" hittades inte!\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
#, fuzzy
msgid "Connection reversal request failed\n"
msgstr "Samling stoppad.\n"
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Misslyckades att starta samling.\n"
msgid "`upnpc' command not found\n"
msgstr ""
-#: src/nse/gnunet-nse.c:123
-#, fuzzy
-msgid "Show network size estimates from NSE service."
-msgstr "# byte mottogs via TCP"
-
#: src/nse/gnunet-nse-profiler.c:849
#, fuzzy
msgid "limit to the number of connections to NSE services, 0 for none"
msgid "Measure quality and performance of the NSE service."
msgstr "Kan inte tillgå tjänsten"
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
-msgid "Value is too large.\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, fuzzy, c-format
-msgid "Removing expired address of transport `%s'\n"
-msgstr "Tillgängliga transport(er): %s\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:313
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:492
-#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:658
-#, fuzzy, c-format
-msgid "Scanning directory `%s'\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:666
-#, c-format
-msgid "Still no peers found in `%s'!\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
-#, fuzzy, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr ""
+#: src/nse/gnunet-nse.c:122
+#, fuzzy
+msgid "Show network size estimates from NSE service."
+msgstr "# byte mottogs via TCP"
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
+msgid "Value is too large.\n"
msgstr ""
-#: src/peerinfo/peerinfo_api.c:220
-#, fuzzy
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n"
-
#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, fuzzy, c-format
msgid "%sPeer `%s'\n"
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, fuzzy, c-format
msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
msgid "also output HELLO uri(s)"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:879
-msgid "add given HELLO uri to the database"
+#: src/peerinfo-tool/gnunet-peerinfo.c:879
+msgid "add given HELLO uri to the database"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:897
+#, fuzzy
+msgid "Print information about peers."
+msgstr "Skriv ut information om GNUnets motparter."
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
+#: src/transport/gnunet-service-transport_plugins.c:168
+#, fuzzy, c-format
+msgid "Starting transport plugins `%s'\n"
+msgstr "Testar transport(er) %s\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
+#: src/transport/gnunet-service-transport_plugins.c:173
+#, fuzzy, c-format
+msgid "Loading `%s' transport plugin\n"
+msgstr "Testar transport(er) %s\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
+#: src/transport/gnunet-service-transport_plugins.c:208
+#, fuzzy, c-format
+msgid "Failed to load transport plugin for `%s'\n"
+msgstr "Kunde inte slå upp \"%s\": %s\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, fuzzy, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr "Tillgängliga transport(er): %s\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, fuzzy, c-format
+msgid "Scanning directory `%s'\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:667
+#, c-format
+msgid "Still no peers found in `%s'!\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:897
-#, fuzzy
-msgid "Print information about peers."
-msgstr "Skriv ut information om GNUnets motparter."
-
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
-#: src/transport/gnunet-service-transport_plugins.c:168
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
#, fuzzy, c-format
-msgid "Starting transport plugins `%s'\n"
-msgstr "Testar transport(er) %s\n"
+msgid "Cleaning up directory `%s'\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
-#: src/transport/gnunet-service-transport_plugins.c:173
-#, fuzzy, c-format
-msgid "Loading `%s' transport plugin\n"
-msgstr "Testar transport(er) %s\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
-#: src/transport/gnunet-service-transport_plugins.c:208
-#, fuzzy, c-format
-msgid "Failed to load transport plugin for `%s'\n"
-msgstr "Kunde inte slå upp \"%s\": %s\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
+#: src/peerinfo/peerinfo_api.c:220
#, fuzzy
-msgid "Peerinfo REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
+msgid "Failed to receive response from `PEERINFO' service."
+msgstr "Misslyckades att ta emot svar till \"%s\" meddelande från gnunetd\n"
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
#, fuzzy
msgid "Unexpected iteration response, this should not happen.\n"
msgstr "Utdataformat är inte känt, detta bör inte hända.\n"
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
#, fuzzy
msgid "Received a malformed response from service."
msgstr "Mottog ogiltig \"%s\" begäran (storlek %d)\n"
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, fuzzy, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr "Fel vid skapandet av användare"
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, fuzzy, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr "\"%s\" till \"%s\" misslyckades vid %s:%d med fel: %s\n"
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "Ogiltigt argument: \"%s\"\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Misslyckades att starta samling.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Misslyckades att starta samling.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Misslyckades att starta samling.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Misslyckades att starta samling.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "Kunde inte skapa värdnyckel!\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "Kunde inte initiera SQLite.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, fuzzy, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+msgid "SQLite database running\n"
+msgstr ""
+
#: src/pt/gnunet-daemon-pt.c:423
#, fuzzy
msgid "Failed to pack DNS request. Dropping.\n"
msgid "# DNS replies dropped (too late?)"
msgstr "# byte mottagna av typen %d"
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, fuzzy, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, fuzzy, c-format
msgid "Ego is required\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, fuzzy, c-format
msgid "Requesting party key is required!\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-#, fuzzy
-msgid "The EGO to use"
-msgstr "meddelandestorlek"
-
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-#, fuzzy
-msgid "OpenID Connect REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-#, fuzzy
-msgid "Identity Provider REST API initialized\n"
-msgstr " Anslutning misslyckades\n"
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "Misslyckades att starta samling.\n"
msgid "Search string `%s' is too long!\n"
msgstr "\"%s\" är inte en fil.\n"
-#: src/rest/gnunet-rest-server.c:1039
+#: src/rest-plugins/plugin_rest_copying.c:209
#, fuzzy
-msgid "GNUnet REST server"
-msgstr "Spåra GNUnets nätverkstopologi."
+msgid "COPYING REST API initialized\n"
+msgstr " Anslutning misslyckades\n"
-#: src/rest/plugin_rest_config.c:265
+#: src/rest-plugins/plugin_rest_credential.c:1128
#, fuzzy
-msgid "CONFIG REST API initialized\n"
+msgid "GNS REST API initialized\n"
msgstr " Anslutning misslyckades\n"
-#: src/rest/plugin_rest_copying.c:209
+#: src/rest-plugins/plugin_rest_gns.c:452
#, fuzzy
-msgid "COPYING REST API initialized\n"
+msgid "Gns REST API initialized\n"
+msgstr " Anslutning misslyckades\n"
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+#, fuzzy
+msgid "Identity REST API initialized\n"
+msgstr " Anslutning misslyckades\n"
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+#, fuzzy
+msgid "Namestore REST API initialized\n"
+msgstr " Anslutning misslyckades\n"
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+#, fuzzy
+msgid "Identity Provider REST API initialized\n"
+msgstr " Anslutning misslyckades\n"
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+#, fuzzy
+msgid "Peerinfo REST API initialized\n"
msgstr " Anslutning misslyckades\n"
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:944
+#, fuzzy
+msgid "GNUnet REST server"
+msgstr "Spåra GNUnets nätverkstopologi."
+
#: src/revocation/gnunet-revocation.c:129
#, fuzzy, c-format
msgid "Key `%s' is valid\n"
msgid "Ego `%s' not found.\n"
msgstr "\"%s\" misslyckades: tabell hittades inte!\n"
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, fuzzy, c-format
msgid "Public key `%s' malformed\n"
msgstr "Ogiltigt argument: \"%s\"\n"
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
#, fuzzy
msgid "No filename to store revocation certificate given.\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, fuzzy, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
#, fuzzy
msgid "No action specified. Nothing to do.\n"
msgstr "Inget tabellnamn angivet, använder \"%s\".\n"
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
#, fuzzy
msgid "Could not open revocation database file!"
msgstr "Kunde inte ansluta till gnunetd.\n"
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
#, fuzzy
msgid "timeout for the profiling"
msgstr "ange prioritet för innehållet"
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "antal iterationer"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
#, fuzzy
msgid "Measure quality and performance of the RPS service."
msgstr "Kan inte tillgå tjänsten"
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
#, fuzzy
msgid "You must specify at least one message ID to check!\n"
msgid "Calculate the Vectorproduct with a GNUnet peer."
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
#, fuzzy
msgid "Connect to CADET failed\n"
msgstr " Anslutning misslyckades (fel?)\n"
msgid "also profile decryption"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
+#: src/set/gnunet-service-set.c:2005
#, fuzzy
msgid "Could not connect to CADET service\n"
msgstr "Kunde inte ansluta till gnunetd.\n"
-#: src/set/gnunet-set-ibf-profiler.c:267
+#: src/set/gnunet-set-ibf-profiler.c:252
#, fuzzy
msgid "number of element in set A-B"
msgstr "antal iterationer"
-#: src/set/gnunet-set-ibf-profiler.c:273
+#: src/set/gnunet-set-ibf-profiler.c:258
#, fuzzy
msgid "number of element in set B-A"
msgstr "antal iterationer"
-#: src/set/gnunet-set-ibf-profiler.c:280
+#: src/set/gnunet-set-ibf-profiler.c:264
msgid "number of common elements in A and B"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
+#: src/set/gnunet-set-ibf-profiler.c:270
msgid "hash num"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:292
+#: src/set/gnunet-set-ibf-profiler.c:276
msgid "ibf size"
msgstr ""
msgid "element size"
msgstr ""
+#: src/social/gnunet-social.c:1166
+#, fuzzy
+msgid "--place missing or invalid.\n"
+msgstr "Ogiltigt argument: \"%s\"\n"
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
+msgstr ""
+
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
+msgstr ""
+
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
+msgstr ""
+
+#: src/social/gnunet-social.c:1304
+#, fuzzy
+msgid "name or public key of ego"
+msgstr "Ogiltigt argument: \"%s\"\n"
+
+#: src/social/gnunet-social.c:1309
+#, fuzzy
+msgid "wait for incoming messages"
+msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
+
+#: src/social/gnunet-social.c:1315
+#, fuzzy
+msgid "GNS name"
+msgstr "Visa _namn"
+
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
+msgstr ""
+
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
+msgstr ""
+
+#: src/social/gnunet-social.c:1333
+#, fuzzy
+msgid "method name"
+msgstr "Visa _namn"
+
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "antal meddelanden att använda per iteration"
+
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
+msgstr ""
+
#: src/sq/sq.c:54
#, c-format
msgid "Failure to bind %u-th SQL parameter\n"
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr "Ladda ner filer från GNUnet."
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
#, fuzzy
msgid "Failed to obtain statistics.\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, fuzzy, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, fuzzy, c-format
msgid "Failed to initialize watch routine\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, fuzzy, c-format
msgid "Invalid argument `%s'\n"
msgstr "Ogiltigt argument: \"%s\"\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, fuzzy, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr "Kan inte ansluta till %u.%u.%u.%u:%u: %s\n"
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr "Skriv ut statistik om GNUnet-operationer."
msgstr "Ogiltigt argument: \"%s\"\n"
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr ""
+#: src/testbed/gnunet-testbed-profiler.c:289
+msgid "tolerate COUNT number of continious timeout failures"
+msgstr ""
+
+#: src/testbed/gnunet-testbed-profiler.c:294
+msgid ""
+"run profiler in non-interactive mode where upon testbed setup the profiler "
+"does not wait for a keystroke but continues to run until a termination "
+"signal is received"
+msgstr ""
+
#: src/testbed/gnunet_testbed_mpi_spawn.c:118
#, fuzzy
msgid "Waiting for child to exit.\n"
msgid "Spawning process `%s'\n"
msgstr "Startade samling \"%s\".\n"
-#: src/testbed/gnunet-testbed-profiler.c:287
-msgid "tolerate COUNT number of continious timeout failures"
-msgstr ""
-
-#: src/testbed/gnunet-testbed-profiler.c:291
-msgid ""
-"run profiler in non-interactive mode where upon testbed setup the profiler "
-"does not wait for a keystroke but continues to run until a termination "
-"signal is received"
-msgstr ""
-
-#: src/testbed/testbed_api.c:400
+#: src/testbed/testbed_api.c:410
#, fuzzy, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
msgid "Hosts file %s cannot be read\n"
msgstr ""
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr "antal meddelanden att använda per iteration"
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, fuzzy, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
#, fuzzy
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr "Inga applikationer definierade i konfiguration!\n"
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
#, fuzzy
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr "Kunde inte komma åt namnrymdsinformation.\n"
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, fuzzy, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr "Kunde inte skapa värdnyckel!\n"
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, fuzzy, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr "Kunde inte skapa användarkonto:"
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, fuzzy, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, fuzzy, c-format
msgid "Failed to start `%s': %s\n"
msgstr "Fel vid %s:%d.\n"
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, fuzzy, c-format
msgid "Failed to load configuration from %s\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
#, fuzzy
msgid "# connect requests issued to ATS"
msgstr "# byte mottogs via TCP"
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
msgid "# HELLO messages gossipped"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
#, fuzzy
msgid "# friends connected"
msgstr "# av anslutna parter"
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, fuzzy, c-format
msgid "Found friend `%s' in configuration\n"
msgstr " gconfig\tGTK-konfiguration\n"
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
#, fuzzy
msgid "# friends in configuration"
msgstr " gconfig\tGTK-konfiguration\n"
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
#, fuzzy
msgid "# HELLO messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
#, fuzzy
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr "GNUnet-konfiguration"
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
#, fuzzy
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr "Maximalt antal chattklienter uppnått.\n"
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, fuzzy, c-format
msgid "Cannot create path to `%s'\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr ""
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
#, fuzzy
msgid "# bytes payload discarded due to not connected peer"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
#, fuzzy
msgid "# bytes total received"
msgstr "# byte krypterade"
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
#, fuzzy
msgid "# bytes payload received"
msgstr "# byte dekrypterade"
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, fuzzy, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, fuzzy, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr "# sessionsnycklar accepterade"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
#, fuzzy
msgid "# DISCONNECT messages sent"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
#, fuzzy
msgid "# messages transmitted to other peers"
msgstr "# byte skickade av typen %d"
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
#, fuzzy
msgid "# transmission failures for messages to other peers"
msgstr "# byte skickade av typen %d"
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
#, fuzzy
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
#, fuzzy
msgid "# KEEPALIVE messages discarded (no session)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "Nätverksannonsering avstängd i konfigurationen!\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
#, fuzzy
msgid "# SYN_ACK messages sent"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Misslyckades att initiera tjänsten \"%s\".\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
#, fuzzy
msgid "# SYN messages received"
msgstr "# PING-meddelanden skapade"
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
#, fuzzy
msgid "# SYN_ACK messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
#, fuzzy
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
#, fuzzy
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
#, fuzzy
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
#, fuzzy
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr "skicka ANTAL meddelanden"
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
#, fuzzy
msgid "# ACK messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# krypterade PONG-meddelanden skickade"
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
#, fuzzy
msgid "# quota messages ignored (malformed)"
msgstr "# byte mottogs via TCP"
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
#, fuzzy
msgid "# QUOTA messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
#, fuzzy
msgid "# DISCONNECT messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
#, fuzzy
msgid "# disconnected from peer upon explicit request"
msgstr "# av anslutna parter"
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
msgid "# validations running"
msgstr ""
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
#, fuzzy
msgid "# PING message for different peer received"
msgstr "# PING-meddelanden skapade"
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, fuzzy, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
#, fuzzy
msgid "# HELLOs given to peerinfo"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+#, fuzzy
+msgid "receive data from peer"
+msgstr "# byte mottagna av typen %d"
+
+#: src/transport/gnunet-transport-profiler.c:626
+#, fuzzy
+msgid "iterations"
+msgstr "Visa alla alternativ"
+
+#: src/transport/gnunet-transport-profiler.c:631
+#, fuzzy
+msgid "number of messages to send"
+msgstr "antal meddelanden att använda per iteration"
+
+#: src/transport/gnunet-transport-profiler.c:636
+#, fuzzy
+msgid "message size to use"
+msgstr "meddelandestorlek"
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+#, fuzzy
+msgid "Direct access to transport service."
+msgstr "Misslyckades att ansluta till gnunetd.\n"
+
+#: src/transport/gnunet-transport.c:413
#, fuzzy, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, fuzzy, c-format
msgid "Failed to connect to `%s'\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, fuzzy, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr "Misslyckades att binda till UDP-port %d.\n"
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, fuzzy, c-format
msgid "Transmitting %u bytes\n"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, fuzzy, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
#, fuzzy
msgid "Connected to"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
#, fuzzy
msgid "Disconnected from"
msgstr "\"%s\" ansluten till \"%s\".\n"
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, fuzzy, c-format
msgid "Received %u bytes\n"
msgstr "mottog ogiltigt \"%s\" meddelande\n"
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, fuzzy, c-format
msgid "Peer `%s': %s %s\n"
msgstr "Jag är ändpunkt \"%s\".\n"
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
#, fuzzy
msgid "Failed to connect to transport service\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
#, fuzzy
msgid "print information for all peers (instead of only connected peers)"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
#, fuzzy
msgid "disconnect from a peer"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
#, fuzzy
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr "Skriv ut information om GNUnets motparter."
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
#, fuzzy
msgid "do not resolve hostnames"
msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-#, fuzzy
-msgid "Direct access to transport service."
-msgstr "Misslyckades att ansluta till gnunetd.\n"
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-#, fuzzy
-msgid "receive data from peer"
-msgstr "# byte mottagna av typen %d"
-
-#: src/transport/gnunet-transport-profiler.c:586
-#, fuzzy
-msgid "iterations"
-msgstr "Visa alla alternativ"
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "antal meddelanden att använda per iteration"
-
-#: src/transport/gnunet-transport-profiler.c:596
-#, fuzzy
-msgid "message size to use"
-msgstr "meddelandestorlek"
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, fuzzy, c-format
msgid "Shutting down plugin `%s'\n"
msgstr "Testar transport(er) %s\n"
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, fuzzy, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr ""
"Uppladdning av \"%s\" klar, aktuell genomsnittshastighet är %8.3f kbps.\n"
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, fuzzy, c-format
msgid "Maximum number of requests is %u\n"
msgstr "Maximalt antal chattklienter uppnått.\n"
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr "# byte kastade via TCP (utgående)"
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
#, fuzzy
msgid "# TCP sessions active"
msgstr "# sessionsnycklar accepterade"
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
#, fuzzy
msgid "# bytes currently in TCP buffers"
msgstr "# byte skickades via TCP"
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
#, fuzzy
msgid "# bytes discarded by TCP (disconnect)"
msgstr "# byte kastade via TCP (utgående)"
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
#, fuzzy
msgid "# bytes discarded by TCP (timeout)"
msgstr "# byte kastade via TCP (utgående)"
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
#, fuzzy
msgid "# bytes transmitted via TCP"
msgstr "# byte skickade av typen %d"
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
#, fuzzy
msgid "# TCP WELCOME messages received"
msgstr "# krypterade PONG-meddelanden mottagna"
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr "# byte mottogs via TCP"
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr "Nätverksanslutning"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
#, fuzzy
msgid "# TCP server connect events"
msgstr "# av anslutna parter"
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
#, fuzzy
msgid "Failed to start service.\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-#, fuzzy
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr "# krypterade PONG-meddelanden mottagna"
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "Misslyckades att binda till UDP6-port %d.\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "\"%s\" är inte tillgänglig."
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "\"%s\" är inte tillgänglig."
msgid "Failed to create UDP network sockets\n"
msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+#, fuzzy
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr "# krypterade PONG-meddelanden mottagna"
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr "# sessionsnycklar accepterade"
+#: src/transport/plugin_transport_xt.c:4010
+#, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4014
+msgid "XT transport not listening on any port (client only)\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4018
+#, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# sessionsnycklar accepterade"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "Misslyckades att binda till UDP6-port %d.\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "Misslyckades att binda till UDP6-port %d.\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, fuzzy, c-format
msgid "Access denied to `%s'\n"
msgstr ""
# drive = hard drive ?
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr "\"%s\" misslyckades för enhet %s: %u\n"
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr "\"%s\" misslyckades för port %d: %s. Körs verkligen gnunetd?\n"
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, fuzzy, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr "\"%s\" misslyckades för port %d: %s. Körs verkligen gnunetd?\n"
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, fuzzy, c-format
msgid "Unknown address family %d\n"
msgstr "Okänd operation \"%s\"\n"
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr "Motpart \"%s\" med pålitlighet %8u och adress \"%s\"\n"
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, fuzzy, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr "Kan inte öppna konfigurationsfil \"%s\".\n"
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr "Kan inte ändra användare/grupp till \"%s\": %s\n"
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, fuzzy, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
#, fuzzy
msgid "Malformed configuration, exit ...\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
msgid "Could not access configuration file `%s'\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "FELSÖKNING"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "INFO"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr "MEDDELANDE"
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "VARNING"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "FEL"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr ""
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr ""
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr ""
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr ""
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr ""
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, fuzzy, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr "Konfigurationsfil \"%s\" skapad.\n"
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, fuzzy, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, fuzzy, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, fuzzy, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, fuzzy, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, fuzzy, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
msgid "Could not load peer's private key\n"
msgstr "Kunde inte tolka konfigurationsfil \"%s\".\n"
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr "libgcrypt har inte den förväntande versionen (version %s krävs).\n"
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, fuzzy, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr "\"%s\" förväntade att \"%s\" skulle vara en katalog!\n"
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, fuzzy, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
msgid "Sent DNS request to %s\n"
msgstr "Misslyckades att skicka HTTP-begäran till värd \"%s\": %s\n"
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
msgid "%s: option `--%s' does not allow an argument\n"
msgstr "%s: flagga \"--%s\" tillåter inte ett argument\n"
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr "%s: flagga \"%c%s\" tillåter inte ett argument\n"
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: flagga \"%s\" kräver ett argument\n"
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s: okänd flagga \"--%s\"\n"
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s: okänd flagga \"%c%s\"\n"
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: otillåten flagga -- %c\n"
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: ogiltig flagga -- %c\n"
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: flagga kräver ett argument -- %c\n"
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s: flagga \"-W %s\" är tvetydig\n"
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr "%s: flagga \"-W %s\" tillåter inte ett argument\n"
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, fuzzy, c-format
msgid "Use %s to get a list of options.\n"
msgstr "Använd --help för att få en lista på flaggor.\n"
-#: src/util/getopt.c:987
-#, fuzzy, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr "Kommando \"%s\" kräver ett argument (\"%s\").\n"
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, fuzzy, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr "Konfigurationsfil \"%s\" skapad.\n"
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr "skriv ut versionsnummer"
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
"Argument som är obligatoriska för långa flaggor är också obligatoriska för "
"korta flaggor.\n"
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr "skriv ut denna hjälp"
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr "var informativ"
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr "skriv ut ett värde från konfigurationsfilen till standard ut"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr "Du måste skicka med ett nummer till flaggan \"%s\".\n"
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, fuzzy, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr "Du måste skicka med ett nummer till flaggan \"%s\".\n"
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, fuzzy, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr "Du måste skicka med ett nummer till flaggan \"%s\".\n"
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, fuzzy, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr "Du måste skicka med ett nummer till flaggan \"%s\".\n"
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, fuzzy, c-format
msgid "%s or %s argument is required\n"
msgstr "%s: flagga \"%s\" är tvetydig\n"
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
#, fuzzy
msgid "name of the option to access"
msgstr "Visa värde av alternativet"
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
#, fuzzy
msgid "print available configuration sections"
msgstr "GNUnet-konfiguration"
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
#, fuzzy
msgid "Manipulate GNUnet configuration files"
msgstr "skriv ut ett värde från konfigurationsfilen till standard ut"
msgid "Failed to open `%s': %s\n"
msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, fuzzy, c-format
msgid ""
"\n"
"Failed to write to `%s': %s\n"
msgstr "Fel vid %s:%d.\n"
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, fuzzy, c-format
msgid ""
"\n"
"Finished!\n"
msgstr "Slutför"
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, fuzzy, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr "\"%s\" misslyckades: tabell hittades inte!\n"
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, fuzzy, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr "antal meddelanden att använda per iteration"
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, fuzzy, c-format
msgid "Could not read hostkey file: %s\n"
msgstr "Kunde inte skapa värdnyckel!\n"
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
#, fuzzy
msgid "Manipulate GNUnet private ECC key files"
msgstr "skriv ut ett värde från konfigurationsfilen till standard ut"
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, fuzzy, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr "Ogiltig nätverksnotation (slutar inte med \";\": \"%s\")\n"
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, fuzzy, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr "Tolkning av HTTP-svar för URL \"%s\" misslyckades.\n"
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
#, fuzzy
msgid "Manipulate GNUnet proof of work files"
msgstr "skriv ut ett värde från konfigurationsfilen till standard ut"
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, fuzzy, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr "Ogiltig nätverksnotation (slutar inte med \";\": \"%s\")\n"
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr "Fel vid skapandet av användare"
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr ""
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, fuzzy, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr "Kunde inte hitta motpart \"%s\" i routingtabell!\n"
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
# drive = hard drive ?
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, fuzzy, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr "\"%s\" misslyckades för enhet %s: %u\n"
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr "Kunde inte fastställa min publika IPv6-adress.\n"
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, fuzzy, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "Kunde inte spara konfigurationsfil \"%s\":"
msgid "Could not resolve our FQDN: %s\n"
msgstr "Kunde inte slå upp \"%s\": %s\n"
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr "Anrop till \"%s\" returnerade %d.\n"
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "b"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr ""
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr ""
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr ""
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "ms"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "s"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "m"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "h"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
#, fuzzy
msgid "day"
msgstr " dagar"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
#, fuzzy
msgid "days"
msgstr " dagar"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr ""
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr ""
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, fuzzy, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr "Ogiltigt svar på \"%s\".\n"
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, fuzzy, c-format
msgid "Malformed port policy `%s'\n"
msgstr "Misslyckades att starta samling.\n"
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr "Ogiltigt format för IP: \"%s\"\n"
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr "Ogiltig nätverksnotation (\"/%d\" är inte giltig i IPv4 CIDR)."
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, fuzzy, c-format
msgid "Invalid format: `%s'\n"
msgstr "Ogiltigt format för IP: \"%s\"\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr "Ogiltig nätverksnotation (slutar inte med \";\": \"%s\")\n"
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, fuzzy, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr "Fel format \"%s\" för nätmask: %s\n"
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, fuzzy, c-format
msgid "Wrong format `%s' for network\n"
msgstr "Fel format \"%s\" för nätverk: %s\n"
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
#, fuzzy
msgid "# Active channels"
msgstr "Nätverksanslutning"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
#, fuzzy
msgid "# Messages dropped in cadet queue (overflow)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
#, fuzzy
msgid "# ICMP packets received from cadet"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
#, fuzzy
msgid "# UDP packets received from cadet"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
#, fuzzy
msgid "# TCP packets received from cadet"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr "# PING-meddelanden skapade"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
#, fuzzy
msgid "# Packets dropped (channel not yet online)"
msgstr "# byte kastade via UDP (utgående)"
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
#, fuzzy
msgid "# Packets received from TUN interface"
msgstr "Meddelande mottaget från klient är ogiltig.\n"
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
#, fuzzy
msgid "# Active destinations"
msgstr "Nätverksanslutning"
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
#, fuzzy
msgid "Must specify valid IPv6 address"
msgstr "\"%s\" är inte tillgänglig."
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
#, fuzzy
msgid "Must specify valid IPv4 address"
msgstr "\"%s\" är inte tillgänglig."
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr ""
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
#, fuzzy
msgid "Failed to connect to the namestore!\n"
msgstr "Misslyckades att ansluta till gnunetd.\n"
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "\"%s\" misslyckades vid %s:%d med fel: \"%s\".\n"
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "\"%s\" misslyckades för fil \"%s\" vid %s:%d med fel: %s\n"
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr "# sessionsnycklar accepterade"
-
-#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "Misslyckades att binda till UDP6-port %d.\n"
-
-#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "Misslyckades att binda till UDP6-port %d.\n"
-
-#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
-#~ msgstr "Kunde inte skapa namnrymd \"%s\" (existerar?).\n"
-
-#, fuzzy
-#~ msgid "Print information about DV state"
-#~ msgstr "Skriv ut information om GNUnets motparter."
-
-#, fuzzy
-#~ msgid "Invalid tunnel owner `%s'\n"
-#~ msgstr "Ogiltigt format för IP: \"%s\"\n"
-
-#, fuzzy
-#~ msgid "Provide information about a particular tunnel"
-#~ msgstr "Skriv ut information om GNUnets motparter."
-
-#, fuzzy
-#~ msgid "Failed to store membership information!\n"
-#~ msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
-
-#, fuzzy
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "Ogiltigt argument: \"%s\"\n"
-
-#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "Misslyckades att starta samling.\n"
-
-#, fuzzy
-#~ msgid "Failed to get fragment!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Failed to get message!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Failed to get message fragment!\n"
-#~ msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
-
-#, fuzzy
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr "Misslyckades att starta samling.\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "Misslyckades att starta samling.\n"
-
-#, fuzzy
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "Misslyckades att starta samling.\n"
-
-#, fuzzy
-#~ msgid "Failed to begin synchronizing state!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Failed to end synchronizing state!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
-
-#, fuzzy
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "Kan inte öppna konfigurationsfil \"%s\".\n"
#, fuzzy
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr "Kunde inte skapa värdnyckel!\n"
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "\"%s\" är inte tillgänglig."
#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
-#~ msgstr "Kunde inte initiera SQLite.\n"
+#~ msgid "Specify a timeout for the lookup"
+#~ msgstr "ange prioritet för innehållet"
#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
+#~ msgid "Unable to parse CAA record string `%s'\n"
#~ msgstr "Misslyckades att läsa kompislista från \"%s\"\n"
#, fuzzy
-#~ msgid "`%s' failed at %s:%d with error: %s (%d)\n"
-#~ msgstr "\"%s\" misslyckades vid %s:%d med fel: %s\n"
-
-#, fuzzy
-#~ msgid "--place missing or invalid.\n"
-#~ msgstr "Ogiltigt argument: \"%s\"\n"
+#~ msgid "The EGO to use"
+#~ msgstr "meddelandestorlek"
#, fuzzy
-#~ msgid "name or public key of ego"
-#~ msgstr "Ogiltigt argument: \"%s\"\n"
+#~ msgid "OpenID Connect REST API initialized\n"
+#~ msgstr " Anslutning misslyckades\n"
#, fuzzy
-#~ msgid "wait for incoming messages"
-#~ msgstr "Misslyckades att leverera \"%s\" meddelande.\n"
+#~ msgid "CONFIG REST API initialized\n"
+#~ msgstr " Anslutning misslyckades\n"
#, fuzzy
-#~ msgid "GNS name"
-#~ msgstr "Visa _namn"
+#~ msgid "Option `%s' can't be used with other options.\n"
+#~ msgstr "Kommando \"%s\" kräver ett argument (\"%s\").\n"
#, fuzzy
-#~ msgid "method name"
-#~ msgstr "Visa _namn"
+#~ msgid "Invalid tunnel owner `%s'\n"
+#~ msgstr "Ogiltigt format för IP: \"%s\"\n"
#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "antal meddelanden att använda per iteration"
+#~ msgid "Provide information about a particular tunnel"
+#~ msgstr "Skriv ut information om GNUnets motparter."
#, fuzzy
#~ msgid "Could not resolve `%s' (%s): %s\n"
#, fuzzy
#~ msgid ""
-#~ "%s service is lacking key configuration settings (%s). Using default "
-#~ "(%u).\n"
+#~ "%s service is lacking key configuration settings (%s). Using default (%"
+#~ "u).\n"
#~ msgstr "GNUnet-konfiguration"
#, fuzzy
#, fuzzy
#~ msgid "No interface specified in section `%s' under `%s'!\n"
#~ msgstr ""
-#~ "Inga nätverksgränssnitt angivna i konfigurationssektionen \"%s\" under "
-#~ "\"%s\"!\n"
+#~ "Inga nätverksgränssnitt angivna i konfigurationssektionen \"%s\" under \"%"
+#~ "s\"!\n"
#, fuzzy
#~ msgid "`%s' returned with error code %u"
#~ msgid ""
#~ "No network interfaces defined in configuration section `%s' under `%s'!\n"
#~ msgstr ""
-#~ "Inga nätverksgränssnitt angivna i konfigurationssektionen \"%s\" under "
-#~ "\"%s\"!\n"
+#~ "Inga nätverksgränssnitt angivna i konfigurationssektionen \"%s\" under \"%"
+#~ "s\"!\n"
#, fuzzy
#~ msgid "Command `%s' failed with error code %u\n"
#~ msgstr "Kunde inte slå upp namnet för SMTP-server \"%s\": %s"
#~ msgid ""
-#~ "You must specify the name of a pipe for the SMTP transport in section `"
-#~ "%s' under `%s'.\n"
+#~ "You must specify the name of a pipe for the SMTP transport in section `%"
+#~ "s' under `%s'.\n"
#~ msgstr ""
#~ "Du måste ange ett namn på röret för SMTP-transporten i sektion \"%s\" "
#~ "under \"%s\".\n"
msgstr ""
"Project-Id-Version: gnunet 0.8.0a\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2008-09-10 22:05+0930\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
-"Language: vi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: vi\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: LocFactoryEditor 1.7b3\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, fuzzy, c-format
msgid "Failed to remove configuration file %s\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, fuzzy, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr "Lỗi truy cập đến thư mục nhà GNUnet « %s »\n"
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr ""
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
#, fuzzy
msgid "We disconnected from ARM before we could send a request"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
#, fuzzy
msgid "Unknown request status"
msgstr "Không rõ người dùng « %s »\n"
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "# các byte trong kho dữ liệu"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
#, fuzzy
msgid "is starting"
msgstr "« %s » đang đăng ký trình điều khiển %d\n"
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
#, fuzzy
msgid "is stopping"
msgstr "# các byte trong kho dữ liệu"
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
#, fuzzy
msgid "is starting already"
msgstr "« %s » đang đăng ký trình điều khiển %d\n"
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
#, fuzzy
msgid "is stopping already"
msgstr "« %s » đang đăng ký trình điều khiển %d\n"
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
#, fuzzy
msgid "is started already"
msgstr "« %s » đang đăng ký trình điều khiển %d\n"
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
#, fuzzy
msgid "is stopped already"
msgstr "« %s » đang đăng ký trình điều khiển %d\n"
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
#, fuzzy
msgid "service is not known to ARM"
msgstr "Không gian tên « %s » có đánh giá %d.\n"
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
#, fuzzy
msgid "service cannot be manipulated because ARM is shutting down"
msgstr "« %s » đang tắt.\n"
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "Không rõ người dùng « %s »\n"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, fuzzy, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
msgid "Failed to stop the ARM service: %s\n"
msgstr "Lỗi vào phòng « %s »\n"
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, fuzzy, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, fuzzy, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, fuzzy, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr "Lỗi chạy %s: %s %d\n"
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, fuzzy, c-format
msgid "Failed to request a list of services: %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
#, fuzzy
msgid "Error communicating with ARM. ARM not running?\n"
msgstr "Cổng để liên lạc với giao diện người dùng GNUnet"
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
#, fuzzy
msgid "Running services:\n"
msgstr "Đang nạp và khởi động dùng « %s ».\n"
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, fuzzy, c-format
msgid "Starting %s...\n"
msgstr "Đang bắt đầu tài về « %s »\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr ""
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, fuzzy, c-format
msgid "Unknown status %u for service %s.\n"
msgstr "Không rõ người dùng « %s »\n"
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
#, fuzzy
msgid "stop all GNUnet services"
msgstr "hủy cài đặt dịch vụ GNUnet"
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
#, fuzzy
msgid "start all GNUnet default services"
msgstr "hủy cài đặt dịch vụ GNUnet"
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
#, fuzzy
msgid "stop and start all GNUnet default services"
msgstr "hủy cài đặt dịch vụ GNUnet"
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr ""
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr ""
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr ""
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
#, fuzzy
msgid "list currently running services"
msgstr "Đang nạp và khởi động dùng « %s ».\n"
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, fuzzy, c-format
msgid "Using `%s' instead\n"
msgstr "%s: tùy chọn « %s » là mơ hồ\n"
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, fuzzy, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, fuzzy, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr "Lỗi đóng kết đến cổng %s %d.\n"
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
+#: src/ats-tests/ats-testing-log.c:837
#, fuzzy
-msgid "print logging"
+msgid "Stop logging\n"
msgstr "Theo dõi"
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, fuzzy, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr "Không thể sơ khởi SQLite: %s.\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, fuzzy, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n"
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, fuzzy, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n"
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "Không thể lưu tập tin cấu hình « %s »:"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2699
-#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr "Không thể lưu tập tin cấu hình « %s »:"
+msgid "Start logging `%s'\n"
+msgstr "Đang bắt đầu tài về « %s »\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, fuzzy, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/ats-tests/ats-testing-log.c:837
-#, fuzzy
-msgid "Stop logging\n"
-msgstr "Theo dõi"
-
-#: src/ats-tests/ats-testing-log.c:892
-#, fuzzy, c-format
-msgid "Start logging `%s'\n"
-msgstr "Đang bắt đầu tài về « %s »\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr ""
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
+msgid ""
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3306
+#, fuzzy
+msgid "print logging"
+msgstr "Theo dõi"
+
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
+msgstr ""
+
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, fuzzy, c-format
+msgid "Failed to initialize solver `%s'!\n"
+msgstr "Không thể sơ khởi SQLite: %s.\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:304
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:359
+#, c-format
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1870
+#, fuzzy, c-format
+msgid "Adding address for peer `%s' multiple times\n"
+msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n"
+
+#: src/ats/plugin_ats_mlp.c:1914
+#, fuzzy, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
+msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n"
+
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "Không thể lưu tập tin cấu hình « %s »:"
+
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
+msgid ""
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr "Không thể lưu tập tin cấu hình « %s »:"
+
#: src/auction/gnunet-auction-create.c:163
msgid "description of the item to be sold"
msgstr ""
#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
msgid "help text"
msgstr ""
msgid "Extra arguments are not applicable in combination with this option.\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/cadet/gnunet-cadet.c:795
#, fuzzy, c-format
msgid "Invalid target `%s'\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/cadet/gnunet-cadet.c:829
+#: src/cadet/gnunet-cadet.c:832
#, fuzzy
msgid "No action requested\n"
msgstr "Thu thập bị dừng.\n"
-#: src/cadet/gnunet-cadet.c:854
+#: src/cadet/gnunet-cadet.c:857
#, fuzzy
msgid "Provide information about a particular connection"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/cadet/gnunet-cadet.c:858
+#: src/cadet/gnunet-cadet.c:861
msgid "Activate echo mode"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
+#: src/cadet/gnunet-cadet.c:866
msgid "Listen for connections using a shared secret among sender and recipient"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
+#: src/cadet/gnunet-cadet.c:871
#, fuzzy
msgid "Provide information about a patricular peer"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/cadet/gnunet-cadet.c:872
+#: src/cadet/gnunet-cadet.c:875
#, fuzzy
msgid "Provide information about all peers"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/cadet/gnunet-cadet.c:876
+#: src/cadet/gnunet-cadet.c:879
#, fuzzy
msgid "Provide information about all tunnels"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "sets the NAME of the ego to use for the caller ID"
msgstr ""
-#: src/conversation/gnunet-conversation.c:1307
-msgid "sets the LINE to use for the phone"
-msgstr ""
-
-#: src/conversation/gnunet-conversation.c:1336
-msgid "Enables having a conversation with other GNUnet users."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
+#: src/conversation/gnunet-conversation.c:1307
+msgid "sets the LINE to use for the phone"
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
+#: src/conversation/gnunet-conversation.c:1336
+msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgid "Failed to allocate %u bytes for second packet\n"
msgstr "Lỗi tạo thư mục tạm thời."
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, fuzzy, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr "Không thể kết nối tới %s:%u: %s\n"
msgid "Could not start playback audio helper.\n"
msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr "# của các đồng đẳng đã kết nối"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
#, fuzzy
msgid "key received"
msgstr "# các khoá phiên chạy bị từ chối"
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
#, fuzzy
msgid "connection established"
msgstr "Thu thập bị dừng.\n"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "« %.*s » được kết nối tới « %.*s ».\n"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "Lỗi không rõ"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr ""
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
msgid "Failed to connect to CORE service!\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
#, fuzzy
msgid "provide information about all current connections (continuously)"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
#, fuzzy
msgid "Print information about connected peers."
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
#, fuzzy
msgid "# send requests dropped (disconnected)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, fuzzy, c-format
msgid "# bytes of messages of type %u received"
msgstr "# các byte nhiễu được nhận"
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
#, fuzzy
msgid "# messages discarded (session disconnected)"
msgstr "# các thông báo được chắp liền"
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, fuzzy, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr "# các byte nhiễu được nhận"
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
#, fuzzy
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "Lưu cấu hình ngay bây giờ không?"
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "Không gian tên « %s » có đánh giá %d.\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr "# các byte đã mã hoá"
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr "# các byte đã giải mã"
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
#, fuzzy
msgid "# PAYLOAD dropped (out of order)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
#, fuzzy
msgid "# PING messages transmitted"
msgstr "# các thông báo PING được tạo"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
#, fuzzy
msgid "# duplicate ephemeral keys ignored"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
#, fuzzy
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr "# các thông báo được chắp liền"
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
#, fuzzy
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr "# các thông báo được chắp liền"
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
#, fuzzy
msgid "# PING messages received"
msgstr "# các thông báo PING được tạo"
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
#, fuzzy
msgid "# PING messages dropped (out of order)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
#, fuzzy
msgid "# PONG messages created"
msgstr "# các thông báo PING được tạo"
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
#, fuzzy
msgid "# sessions terminated by timeout"
msgstr "# các byte loại đi bởi TCP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
#, fuzzy
msgid "# keepalive messages sent"
msgstr "# các thông báo PING nhập thô được gửi"
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
#, fuzzy
msgid "# PONG messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
#, fuzzy
msgid "# PONG messages dropped (connection down)"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
#, fuzzy
msgid "# PONG messages dropped (out of order)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
#, fuzzy
msgid "# PONG messages decrypted"
msgstr "# các thông báo PING được tạo"
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
#, fuzzy
msgid "# session keys confirmed via PONG"
msgstr "# Các quảng cáo đồng đẳng được xác nhận qua PONG"
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
#, fuzzy
msgid "# timeouts prevented via PONG"
msgstr "# các byte đã nhận qua TCP"
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
#, fuzzy
msgid "# rekey operations confirmed via PONG"
msgstr "# Các quảng cáo đồng đẳng được xác nhận qua PONG"
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
#, fuzzy
msgid "# DATA message dropped (out of order)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
#, fuzzy
msgid "# sessions terminated by key expiration"
msgstr "# các byte loại đi bởi TCP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
#, fuzzy
msgid "# bytes dropped (duplicates)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
#, fuzzy
msgid "# bytes dropped (out of sequence)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
#, fuzzy
msgid "# bytes dropped (ancient message)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
#, fuzzy
msgid "# bytes of payload decrypted"
msgstr "# các byte đã giải mã"
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
#, fuzzy
msgid "# peers connected"
msgstr "# của các đồng đẳng đã kết nối"
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
#, fuzzy
msgid "# type map refreshes sent"
msgstr "# tổng số yêu cầu lỗ hổng được gửi"
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
#, fuzzy
msgid "# outdated typemap confirmations received"
msgstr "Lỗi lưu cấu hình."
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
#, fuzzy
msgid "# valid typemap confirmations received"
msgstr "Lỗi lưu cấu hình."
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
#, fuzzy
msgid "# type maps received"
msgstr "# các thông báo phát hiện dht được nhận"
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr ""
msgid "GNUnet credential resolver tool"
msgstr "Bản ghi lỗi GNUnet"
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, fuzzy, c-format
msgid "Failed to connect to GNS\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, fuzzy, c-format
msgid "Failed to connect to namestore\n"
msgstr "Không kết nối được đến trình nền gnunetd."
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/credential/plugin_rest_credential.c:1128
-#, fuzzy
-msgid "GNS REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
#, fuzzy
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
#, fuzzy
msgid "Failed to drop table from database.\n"
msgstr ""
"\n"
"Không nhận được đáp ứng từ gnunetd.\n"
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr ""
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr "Không thể sơ khởi SQLite: %s.\n"
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
#, fuzzy
msgid "Sqlite database running\n"
msgstr "kho dữ liệu sqlite"
msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, fuzzy, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr "tăng sổ tối đa các kết nối TCP/IP"
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-#, fuzzy
-msgid "number of peers to start"
-msgstr "số lần lặp lại"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:1009
-#, fuzzy
-msgid "Measure quality and performance of the DHT service."
-msgstr "Không thể truy cập đến dịch vụ"
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr "# các thông báo PING được tạo"
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
#, fuzzy
msgid "# requests TTL-dropped"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
#, fuzzy
msgid "# Peer selection failed"
msgstr "# các cuộc gọi HTTP select (lựa chọn)"
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
#, fuzzy
msgid "# PUT requests routed"
msgstr "# các yêu cầu dht được định tuyến"
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
#, fuzzy
msgid "# PUT messages queued for transmission"
msgstr "# các thông báo PING được tạo"
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
#, fuzzy
msgid "# P2P messages dropped due to full queue"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
#, fuzzy
msgid "# GET requests routed"
msgstr "# các yêu cầu dht được định tuyến"
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
#, fuzzy
msgid "# GET messages queued for transmission"
msgstr "# các thông báo PING được tạo"
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
#, fuzzy
msgid "# RESULT messages queued for transmission"
msgstr "# các thông báo PING được tạo"
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
msgid "# Expired PUTs discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
#, fuzzy
msgid "# P2P PUT requests received"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
#, fuzzy
msgid "# P2P PUT bytes received"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
#, fuzzy
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr "# các yêu cầu được lọc theo bộ lọc bloom"
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
#, fuzzy
msgid "# P2P GET requests received"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
#, fuzzy
msgid "# P2P GET bytes received"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
#, fuzzy
msgid "# P2P FIND PEER requests processed"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
#, fuzzy
msgid "# P2P GET requests ONLY routed"
msgstr "# các yêu cầu dht được định tuyến"
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
msgid "# Expired results discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
#, fuzzy
msgid "# P2P RESULTS received"
msgstr "# Tín hiệu HTTP PUT được nhận"
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
#, fuzzy
msgid "# P2P RESULT bytes received"
msgstr "# Tín hiệu HTTP PUT được nhận"
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
#, fuzzy
msgid "# DHT requests combined"
msgstr "# các yêu cầu get (lấy) dht được nhận"
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, fuzzy, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr "tăng sổ tối đa các kết nối TCP/IP"
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+#, fuzzy
+msgid "number of peers to start"
+msgstr "số lần lặp lại"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+#, fuzzy
+msgid "Measure quality and performance of the DHT service."
+msgstr "Không thể truy cập đến dịch vụ"
+
#: src/dht/plugin_block_dht.c:189
#, fuzzy, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
#, fuzzy
msgid "need a valid IPv4 or IPv6 address\n"
msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
msgstr ""
+#: src/dv/gnunet-dv.c:175
+#, fuzzy
+msgid "Print information about DV state"
+msgstr "In ra thông tin về các đồng đẳng GNUnet."
+
#: src/exit/gnunet-daemon-exit.c:960
#, fuzzy
msgid "# TCP packets sent via TUN"
msgid "# ICMP packets sent via TUN"
msgstr "# các byte đã gửi qua UDP"
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
#, fuzzy
msgid "# UDP packets sent via TUN"
msgstr "# các byte đã gửi qua UDP"
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
#, fuzzy
msgid "# Bytes received from CADET"
msgstr "# các byte đã nhận qua HTTP"
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
#, fuzzy
msgid "# UDP IP-exit requests received via cadet"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
#, fuzzy
msgid "# UDP service requests received via cadet"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
#, fuzzy
msgid "# TCP service creation requests received via cadet"
msgstr "# các yêu cầu danh sách máy được nhận"
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
#, fuzzy
msgid "# TCP IP-exit creation requests received via cadet"
msgstr "# các yêu cầu danh sách máy được nhận"
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
#, fuzzy
msgid "# TCP DATA requests dropped (no session)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
#, fuzzy
msgid "# TCP data requests received via cadet"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
#, fuzzy
msgid "# ICMP IP-exit requests received via cadet"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
#, fuzzy
msgid "# ICMP service requests received via cadet"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr "# các truy vấn lỗ hổng được định tuyến"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr "# các byte được gửi"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
#, fuzzy
msgid "# Packets received from TUN"
msgstr "# các byte đã nhận qua HTTP"
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
#, fuzzy
msgid "# Bytes received from TUN"
msgstr "# các byte đã nhận qua HTTP"
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, fuzzy, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s ».\n"
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
msgid "Publishing failed: %s"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "Không thể mở tập tin « %s »: « %s »"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, fuzzy, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr "Lỗi đánh chỉ mục tập tin « %s ». Đề nghị: thử chèn tập tin.\n"
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr ""
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
#, fuzzy
msgid "filename too long"
msgstr "tên tập tin"
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
msgid "could not connect to `fs' service"
msgstr ""
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, fuzzy, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, fuzzy, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr "%s bị lỗi tại %s:%d: « %s »\n"
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, fuzzy, c-format
msgid "Recursive upload failed: %s"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr ""
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr "Kho dữ liệu đầy.\n"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr "Không kết nối được đến trình nền gnunetd."
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr ""
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr ""
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
msgid "Malformed KSK URI (`++' not allowed)"
msgstr ""
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
msgid "Malformed KSK URI (quotes not balanced)"
msgstr ""
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr ""
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr "Chưa ghi rõ từ khoá.\n"
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr "Có dấu nháy kép thừa hay thiếu.\n"
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, fuzzy, c-format
msgid "Failed to load state: %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, fuzzy, c-format
msgid "Failed to save state to file %s\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, fuzzy, c-format
msgid "Publishing `%s'\n"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, fuzzy, c-format
msgid "Failed to run `%s'\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, fuzzy, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr "Phải ghi rõ chỉ một tên tập tin để chèn.\n"
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr "đặt CẤP mong muốn của tình trạng nặc danh của người gửi"
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr "tắt thêm giờ tạo vào siêu dữ liệu của tập tin đã tải lên"
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr "xác định mức ưu tiên của nội dung"
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
#, fuzzy
msgid "Automatically publish files from a directory on GNUnet"
msgstr "Tự động chia sẻ một thư mục."
msgstr "Tiến trình tải lên « %s » đã tiếp tục lại.\n"
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, fuzzy, c-format
msgid "Unexpected status: %d\n"
msgstr "Gặp sự kiện bất thường: %d\n"
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, fuzzy, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
#, fuzzy
msgid "set the desired LEVEL of receiver-anonymity"
msgstr "đặt CẤP mong muốn của tình trạng nặc danh của người gửi"
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr "xoá việc tải về không hoàn thành (khi hủy bở dùng CTRL-C)"
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-#, fuzzy
-msgid "Special file-sharing operations"
-msgstr "Tùy chọn chia sẻ tập tin"
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+#, fuzzy
+msgid "Special file-sharing operations"
+msgstr "Tùy chọn chia sẻ tập tin"
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "=\tLỗi đọc thư mục.\n"
#: src/fs/gnunet-publish.c:715
msgstr "Tùy chọn « %s » cần thiết khi dùng tùy chọn « %s ».\n"
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr "Tùy chọn « %s » không có nghĩa khi không có tùy chọn « %s ».\n"
-#: src/fs/gnunet-publish.c:911
-#, fuzzy
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr "tắt thêm giờ tạo vào siêu dữ liệu của tập tin đã tải lên"
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, fuzzy, c-format
msgid "Error searching: %s.\n"
msgstr "Gặp lỗi khi tải xuống: %s\n"
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
#, fuzzy
msgid "Could not create keyword URI from arguments.\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
#, fuzzy
msgid "Could not start searching.\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
#, fuzzy
msgid "Search GNUnet for files that were published on GNUnet"
msgstr "Không hiển thị kết quả tìm kiếm cho tập tin được chúng ta tải lên"
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "Lưu cấu hình ngay bây giờ không?"
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
#, fuzzy
msgid "# replies received via cadet"
msgstr "# các byte kiểu %d được nhận"
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
#, fuzzy
msgid "# replies received via cadet dropped"
msgstr "# các byte kiểu %d được nhận"
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
#, fuzzy
msgid "# Pending requests created"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
#, fuzzy
msgid "# Pending requests active"
msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
#, fuzzy
msgid "# replies received and matched"
msgstr "# các byte kiểu %d được nhận"
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
#, fuzzy
msgid "# results found locally"
msgstr "# nội dung lỗ hổng được tìm cục bộ"
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
#, fuzzy
msgid "# storage requests dropped due to high load"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
#, fuzzy
msgid "# Replies received from DHT"
msgstr "# các byte đã nhận qua HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
#, fuzzy
msgid "# Replies received from CADET"
msgstr "# các byte đã nhận qua HTTP"
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
#, fuzzy
msgid "# GAP PUT messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
#, fuzzy
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, fuzzy, c-format
msgid "Received malformed DNS request from %s\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, fuzzy, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
#, fuzzy
msgid "No DNS server specified!\n"
msgstr "Chưa ghi rõ từ khoá.\n"
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "« %s » không sẵn sàng.\n"
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-#, fuzzy
-msgid "Specify the type of the record to lookup"
-msgstr "xác định mức ưu tiên của nội dung"
-
-#: src/gns/gnunet-gns.c:272
-#, fuzzy
-msgid "Specify a timeout for the lookup"
-msgstr "xác định mức ưu tiên của nội dung"
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-#, fuzzy
-msgid "GNUnet GNS resolver tool"
-msgstr "Bản ghi lỗi GNUnet"
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr "%s bị lỗi tại %s:%d: « %s »\n"
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, fuzzy, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, fuzzy, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, fuzzy, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr "Không thể sơ khởi SQLite: %s.\n"
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, fuzzy, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, fuzzy, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, fuzzy, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, fuzzy, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr "Không thể tạo tài khoản người dùng:"
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, fuzzy, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
#, fuzzy
msgid "Failed to pass client to MHD\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, fuzzy, c-format
msgid "Unsupported socks version %d\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, fuzzy, c-format
msgid "Unsupported socks command %d\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, fuzzy, c-format
msgid "Unsupported socks address type %d\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, fuzzy, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+#, fuzzy
+msgid "Specify the type of the record to lookup"
+msgstr "xác định mức ưu tiên của nội dung"
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+#, fuzzy
+msgid "GNUnet GNS resolver tool"
+msgstr "Bản ghi lỗi GNUnet"
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr "Không kết nối được đến trình nền gnunetd."
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
#, fuzzy
msgid "Could not connect to DHT!\n"
msgstr "Không thể kết nối tới %s:%u: %s\n"
msgid "Unable to parse BOX record string `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gns/plugin_rest_gns.c:442
-#, fuzzy
-msgid "Gns REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, fuzzy, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, fuzzy, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, fuzzy, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, fuzzy, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, fuzzy, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, fuzzy, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, fuzzy, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, fuzzy, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, fuzzy, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, fuzzy, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, fuzzy, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
#, fuzzy
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr "Lỗi lưu cấu hình."
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
#, fuzzy
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr "Lỗi lưu cấu hình."
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
#, fuzzy
msgid "Failed to parse HELLO message: malformed\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
#, fuzzy
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr ""
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, fuzzy, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr "Lỗi đóng kết đến cổng %s %d.\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
#, fuzzy
msgid "advertise our hostlist to other peers"
msgstr "Tắt quảng cáo máy này cho đồng đẳng khác"
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
#, fuzzy
msgid "enable learning about hostlist servers from other peers"
msgstr "Tắt quảng cáo máy này cho đồng đẳng khác"
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
#, fuzzy
msgid "provide a hostlist server"
msgstr "trình phục vụ danh sách máy HTTP hợp nhất"
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
#, fuzzy
msgid "# bytes downloaded from hostlist servers"
msgstr "trình phục vụ danh sách máy HTTP hợp nhất"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
#, fuzzy
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr "# các HELLO tải xuống qua HTTP"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, fuzzy, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr "Nhận được thông báo « %s » sai từ đồng đẳng « %s ».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
#, fuzzy
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr "# các HELLO tải xuống qua HTTP"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, fuzzy, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, fuzzy, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr "Tải lên « %s » hoàn thành, địa chỉ URI là « %s ».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, fuzzy, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr "Tải lên « %s » hoàn thành, địa chỉ URI là « %s ».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, fuzzy, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr "Đang nạp và khởi động dùng « %s ».\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
#, fuzzy
msgid "# active connections"
msgstr "# các kết nối dht"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, fuzzy, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, fuzzy, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, fuzzy, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr "Lỗi mở tập tin theo dõi « %s »: %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
#, fuzzy
msgid "# hostlist URIs read from file"
msgstr "# các byte danh sách máy được trả về"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, fuzzy, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr "Lỗi mở tập tin theo dõi « %s »: %s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, fuzzy, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
#, fuzzy
msgid "# hostlist URIs written to file"
msgstr "# các byte danh sách máy được trả về"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
#, fuzzy
msgid "bytes in hostlist"
msgstr "# các byte trong kho dữ liệu"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, fuzzy, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr "Cổng để liên lạc với giao diện người dùng GNUnet"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, fuzzy, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr "trình phục vụ danh sách máy HTTP hợp nhất"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
#, fuzzy
msgid "hostlist requests refused (not HTTP GET)"
msgstr "# các yêu cầu danh sách máy được nhận"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
#, fuzzy
msgid "hostlist requests refused (upload data)"
msgstr "# các yêu cầu danh sách máy được nhận"
msgid "hostlist requests refused (not ready)"
msgstr "# các yêu cầu danh sách máy được nhận"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
#, fuzzy
msgid "Received request for our hostlist\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
#, fuzzy
msgid "hostlist requests processed"
msgstr "# các yêu cầu danh sách máy được nhận"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
#, fuzzy
msgid "# hostlist advertisements send"
msgstr "# Các quảng cáo ngoại được chuyển tiếp"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
#, fuzzy
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, fuzzy, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "« %s » không sẵn sàng.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr "« %s » không sẵn sàng.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "« %s » không sẵn sàng.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "« %s » không sẵn sàng.\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, fuzzy, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr "Cổng cho trình phục vụ HTTP danh sách máy chủ thống nhất"
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, fuzzy, c-format
msgid "Failed to create ego: %s\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, fuzzy, c-format
msgid "Failed to set default ego: %s\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-msgid "reduce output"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-#, fuzzy
-msgid "display private keys as well"
-msgstr "hiển thị giá trị tổng kiểm của tập tin"
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, fuzzy, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, fuzzy, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, fuzzy, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, fuzzy, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/identity/plugin_rest_identity.c:1311
-#, fuzzy
-msgid "Identity REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, fuzzy, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr "Đang thử dùng tập tin « %s » cho cấu hình MySQL.\n"
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, fuzzy, c-format
msgid "Could not access file `%s': %s\n"
msgstr "Không thể truy cập đến « %s »: %s\n"
msgid "No records found for `%s'"
msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n"
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr "Phải ghi rõ tên hiệu\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
#: src/namecache/gnunet-namecache.c:238
#, fuzzy
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr "xác định mức ưu tiên của nội dung"
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
#, fuzzy
msgid "GNUnet zone manipulation tool"
msgstr "Cấu hình GNUnet"
#: src/namecache/plugin_namecache_flat.c:121
#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
#: src/peerstore/plugin_peerstore_flat.c:379
#: src/peerstore/plugin_peerstore_flat.c:538
#, fuzzy, c-format
msgid "Unable to initialize file: %s.\n"
msgstr "Không thể sơ khởi SQLite: %s.\n"
-#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
-#: src/peerstore/plugin_peerstore_flat.c:394
+#: src/namecache/plugin_namecache_flat.c:132
+#: src/namestore/plugin_namestore_heap.c:159
+#: src/peerstore/plugin_peerstore_flat.c:394
+#, fuzzy, c-format
+msgid "Unable to get filesize: %s.\n"
+msgstr "Không thể tạo miền tên.\n"
+
+#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
+#: src/peerstore/plugin_peerstore_flat.c:406
+#, fuzzy, c-format
+msgid "Unable to read file: %s.\n"
+msgstr "Không thể tạo miền tên.\n"
+
+#: src/namecache/plugin_namecache_flat.c:410
+#, fuzzy
+msgid "flat plugin running\n"
+msgstr "kho dữ liệu sqlite"
+
+#: src/namecache/plugin_namecache_sqlite.c:183
+#: src/namecache/plugin_namecache_sqlite.c:197
+#: src/namestore/plugin_namestore_sqlite.c:219
+#: src/namestore/plugin_namestore_sqlite.c:230
+#, fuzzy, c-format
+msgid "Failed to setup database at `%s'\n"
+msgstr "Lỗi chạy %s: %s %d\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, fuzzy, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, fuzzy, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
#, fuzzy, c-format
-msgid "Unable to get filesize: %s.\n"
+msgid "Failed to create page for `%s'\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/namecache/plugin_namecache_flat.c:151
-#: src/peerstore/plugin_peerstore_flat.c:406
+#: src/namestore/gnunet-namestore-fcfsd.c:796
#, fuzzy, c-format
-msgid "Unable to read file: %s.\n"
-msgstr "Không thể tạo miền tên.\n"
+msgid "Failed to setup post processor for `%s'\n"
+msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n"
-#: src/namecache/plugin_namecache_flat.c:410
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
#, fuzzy
-msgid "flat plugin running\n"
-msgstr "kho dữ liệu sqlite"
+msgid "Failed to start HTTP server\n"
+msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/namecache/plugin_namecache_sqlite.c:183
-#: src/namecache/plugin_namecache_sqlite.c:197
-#: src/namestore/plugin_namestore_sqlite.c:219
-#: src/namestore/plugin_namestore_sqlite.c:230
-#, fuzzy, c-format
-msgid "Failed to setup database at `%s'\n"
-msgstr "Lỗi chạy %s: %s %d\n"
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
+#, fuzzy
+msgid "Failed to connect to identity\n"
+msgstr "Lỗi kết nối đến gnunetd.\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr ""
+
+#: src/namestore/gnunet-namestore.c:341
#, fuzzy, c-format
msgid "Adding record failed: %s\n"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, fuzzy, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, fuzzy, c-format
msgid "Deleting record failed%s%s\n"
msgstr "Gặp lỗi khi tải lên tập tin: %s\n"
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, fuzzy, c-format
msgid "No options given\n"
msgstr "chưa đưa ra tên"
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, fuzzy, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » nên là con số\n"
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, fuzzy, c-format
msgid "Unsupported type `%s'\n"
msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, fuzzy, c-format
msgid "Invalid time format `%s'\n"
msgstr "Địa chỉ IP định dạng sai: %s\n"
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, fuzzy, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, fuzzy, c-format
msgid "Invalid URI `%s'\n"
msgstr "Dữ liệu nhập không hợp lệ.\n"
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, fuzzy, c-format
msgid "Invalid nick `%s'\n"
msgstr "Dữ liệu nhập không hợp lệ.\n"
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, c-format
msgid "No default ego configured in identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, fuzzy, c-format
msgid "Cannot connect to identity service\n"
msgstr "Không thể kết nối tới %s:%u: %s\n"
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, fuzzy, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "Không rõ câu lệnh « %s ».\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "Địa chỉ IP định dạng sai: %s\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
#, fuzzy
msgid "set the desired nick name for the zone"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
#, fuzzy
msgid "monitor changes in the namestore"
msgstr "Không kết nối được đến trình nền gnunetd."
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
#, fuzzy
msgid "determine our name for the given PKEY"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
msgid "name of the ego controlling the zone"
msgstr ""
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, fuzzy, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr "Lệnh không được hỗ trợ « %s ». Đang hủy bỏ.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, fuzzy, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, fuzzy, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr "Không thể tạo miền tên.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, fuzzy, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-#, fuzzy
-msgid "Failed to start HTTP server\n"
-msgstr "Lỗi bắt đầu thu thập.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-#, fuzzy
-msgid "Failed to connect to identity\n"
-msgstr "Lỗi kết nối đến gnunetd.\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, fuzzy, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr "Lỗi cập nhật dữ liệu cho mô-đun « %s »\n"
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
+#: src/namestore/plugin_namestore_heap.c:778
#, fuzzy
-msgid "Flat file database running\n"
+msgid "heap file database running\n"
msgstr "kho dữ liệu sqlite"
-#: src/namestore/plugin_rest_namestore.c:919
-#, fuzzy
-msgid "Namestore REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
#: src/nat-auto/gnunet-nat-auto.c:193
#, fuzzy
msgid "Suggested configuration changes:\n"
msgstr "Cấu hình GNUnet"
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
#, fuzzy
msgid "Failed to connect to `gnunet-nat-server'\n"
msgid "Detected external IP `%s'\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, fuzzy, c-format
msgid "Detected internal network address `%s'.\n"
msgstr "GNUnet bây giờ sử dụng địa chỉ IP %s.\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
msgid "upnpc not found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
#, fuzzy
msgid "Connection reversal request failed\n"
msgstr "Thu thập bị dừng.\n"
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "Lỗi bắt đầu thu thập.\n"
msgid "`upnpc' command not found\n"
msgstr ""
-#: src/nse/gnunet-nse.c:123
-#, fuzzy
-msgid "Show network size estimates from NSE service."
-msgstr "# các yêu cầu get (lấy) dht được nhận"
-
#: src/nse/gnunet-nse-profiler.c:849
#, fuzzy
msgid "limit to the number of connections to NSE services, 0 for none"
msgid "Measure quality and performance of the NSE service."
msgstr "Không thể truy cập đến dịch vụ"
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
+#: src/nse/gnunet-nse.c:122
#, fuzzy
-msgid "Value is too large.\n"
-msgstr "Giá trị không nằm trong phạm vi được phép."
-
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, fuzzy, c-format
-msgid "Removing expired address of transport `%s'\n"
-msgstr "Đã nạp truyền tải « %s »\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:313
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:492
-#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
-msgstr ""
-"Tập tin « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ "
-"bỏ.\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:658
-#, fuzzy, c-format
-msgid "Scanning directory `%s'\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:666
-#, c-format
-msgid "Still no peers found in `%s'!\n"
-msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
-#, fuzzy, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
-msgstr ""
+msgid "Show network size estimates from NSE service."
+msgstr "# các yêu cầu get (lấy) dht được nhận"
-#: src/peerinfo/peerinfo_api.c:220
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
#, fuzzy
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr ""
-"\n"
-"Không nhận được đáp ứng từ gnunetd.\n"
+msgid "Value is too large.\n"
+msgstr "Giá trị không nằm trong phạm vi được phép."
#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, fuzzy, c-format
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, fuzzy, c-format
msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr "Lỗi đóng kết đến cổng %s %d.\n"
msgid "also output HELLO uri(s)"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:879
-msgid "add given HELLO uri to the database"
-msgstr ""
+#: src/peerinfo-tool/gnunet-peerinfo.c:879
+msgid "add given HELLO uri to the database"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:897
+#, fuzzy
+msgid "Print information about peers."
+msgstr "In ra thông tin về các đồng đẳng GNUnet."
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
+#: src/transport/gnunet-service-transport_plugins.c:168
+#, fuzzy, c-format
+msgid "Starting transport plugins `%s'\n"
+msgstr "Đang nạp các truyền tải « %s »\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
+#: src/transport/gnunet-service-transport_plugins.c:173
+#, fuzzy, c-format
+msgid "Loading `%s' transport plugin\n"
+msgstr "Đang nạp các truyền tải « %s »\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
+#: src/transport/gnunet-service-transport_plugins.c:208
+#, fuzzy, c-format
+msgid "Failed to load transport plugin for `%s'\n"
+msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, fuzzy, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr "Đã nạp truyền tải « %s »\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:492
+#, c-format
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
+msgstr ""
+"Tập tin « %s » trong thư mục « %s » không tùy theo quy ước đặt tên. Bị gỡ "
+"bỏ.\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, fuzzy, c-format
+msgid "Scanning directory `%s'\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:897
-#, fuzzy
-msgid "Print information about peers."
-msgstr "In ra thông tin về các đồng đẳng GNUnet."
+#: src/peerinfo/gnunet-service-peerinfo.c:667
+#, c-format
+msgid "Still no peers found in `%s'!\n"
+msgstr "Vẫn còn không tìm thấy đồng đẳng trong « %s ».\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
-#: src/transport/gnunet-service-transport_plugins.c:168
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
#, fuzzy, c-format
-msgid "Starting transport plugins `%s'\n"
-msgstr "Đang nạp các truyền tải « %s »\n"
+msgid "Cleaning up directory `%s'\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
-#: src/transport/gnunet-service-transport_plugins.c:173
-#, fuzzy, c-format
-msgid "Loading `%s' transport plugin\n"
-msgstr "Đang nạp các truyền tải « %s »\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
-#: src/transport/gnunet-service-transport_plugins.c:208
-#, fuzzy, c-format
-msgid "Failed to load transport plugin for `%s'\n"
-msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
+#: src/peerinfo/peerinfo_api.c:220
#, fuzzy
-msgid "Peerinfo REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
+msgid "Failed to receive response from `PEERINFO' service."
+msgstr ""
+"\n"
+"Không nhận được đáp ứng từ gnunetd.\n"
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "Không thể đọc danh sách bạn bè « %s »\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
#, fuzzy
msgid "Unexpected iteration response, this should not happen.\n"
msgstr "Định dạng kết xuất không rõ, điều này không nên xảy ra.\n"
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
#, fuzzy
msgid "Received a malformed response from service."
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, fuzzy, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr "Gặp lỗi khi tạo người dùng"
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, fuzzy, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "Đối số không hợp lệ cho « %s ».\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "Lỗi bắt đầu thu thập.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "Lỗi bắt đầu thu thập.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "Lỗi bắt đầu thu thập.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "Lỗi bắt đầu thu thập.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "Lỗi lấy thông kê về truyền tải.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "Không thể sơ khởi SQLite: %s.\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, fuzzy, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+#, fuzzy
+msgid "SQLite database running\n"
+msgstr "kho dữ liệu sqlite"
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr ""
msgid "# DNS replies dropped (too late?)"
msgstr "# các đáp ứng dht được định tuyến"
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, fuzzy, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, fuzzy, c-format
msgid "Ego is required\n"
msgstr "Bị từ chối đặt tùy chọn « %s » trong phần « %s » thành « %s ».\n"
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, fuzzy, c-format
msgid "Requesting party key is required!\n"
msgstr "đặt tên hiệu cần dùng (cần thiết)"
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-#, fuzzy
-msgid "The EGO to use"
-msgstr "kích cỡ tin nhắn"
-
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-#, fuzzy
-msgid "OpenID Connect REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-#, fuzzy
-msgid "Identity Provider REST API initialized\n"
-msgstr "Lỗi sơ khởi lõi.\n"
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "Lỗi bắt đầu thu thập.\n"
msgid "Search string `%s' is too long!\n"
msgstr "« %s » không phải là một tập tin.\n"
-#: src/rest/gnunet-rest-server.c:1039
+#: src/rest-plugins/plugin_rest_copying.c:209
#, fuzzy
-msgid "GNUnet REST server"
-msgstr "Bản ghi lỗi GNUnet"
+msgid "COPYING REST API initialized\n"
+msgstr "Lỗi sơ khởi lõi.\n"
-#: src/rest/plugin_rest_config.c:265
+#: src/rest-plugins/plugin_rest_credential.c:1128
#, fuzzy
-msgid "CONFIG REST API initialized\n"
+msgid "GNS REST API initialized\n"
msgstr "Lỗi sơ khởi lõi.\n"
-#: src/rest/plugin_rest_copying.c:209
+#: src/rest-plugins/plugin_rest_gns.c:452
#, fuzzy
-msgid "COPYING REST API initialized\n"
+msgid "Gns REST API initialized\n"
+msgstr "Lỗi sơ khởi lõi.\n"
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+#, fuzzy
+msgid "Identity REST API initialized\n"
+msgstr "Lỗi sơ khởi lõi.\n"
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+#, fuzzy
+msgid "Namestore REST API initialized\n"
+msgstr "Lỗi sơ khởi lõi.\n"
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+#, fuzzy
+msgid "Identity Provider REST API initialized\n"
+msgstr "Lỗi sơ khởi lõi.\n"
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+#, fuzzy
+msgid "Peerinfo REST API initialized\n"
msgstr "Lỗi sơ khởi lõi.\n"
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:944
+#, fuzzy
+msgid "GNUnet REST server"
+msgstr "Bản ghi lỗi GNUnet"
+
#: src/revocation/gnunet-revocation.c:129
#, fuzzy, c-format
msgid "Key `%s' is valid\n"
msgid "Ego `%s' not found.\n"
msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, fuzzy, c-format
msgid "Public key `%s' malformed\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
#, fuzzy
msgid "No filename to store revocation certificate given.\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, fuzzy, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
#, fuzzy
msgid "No action specified. Nothing to do.\n"
msgstr "Chưa xác định giao diện nên dùng mặc định.\n"
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
#, fuzzy
msgid "Could not open revocation database file!"
msgstr "« %s »: Không thể kết nối.\n"
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
#, fuzzy
msgid "timeout for the profiling"
msgstr "xác định mức ưu tiên của nội dung"
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "số lần lặp lại"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
#, fuzzy
msgid "Measure quality and performance of the RPS service."
msgstr "Không thể truy cập đến dịch vụ"
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
#, fuzzy
msgid "You must specify at least one message ID to check!\n"
msgid "Calculate the Vectorproduct with a GNUnet peer."
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
#, fuzzy
msgid "Connect to CADET failed\n"
msgstr " Không kết nối được (lỗi ?)\n"
msgid "also profile decryption"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
+#: src/set/gnunet-service-set.c:2005
#, fuzzy
msgid "Could not connect to CADET service\n"
msgstr "Không thể kết nối tới %s:%u: %s\n"
-#: src/set/gnunet-set-ibf-profiler.c:267
+#: src/set/gnunet-set-ibf-profiler.c:252
#, fuzzy
msgid "number of element in set A-B"
msgstr "số lần lặp lại"
-#: src/set/gnunet-set-ibf-profiler.c:273
+#: src/set/gnunet-set-ibf-profiler.c:258
#, fuzzy
msgid "number of element in set B-A"
msgstr "số lần lặp lại"
-#: src/set/gnunet-set-ibf-profiler.c:280
+#: src/set/gnunet-set-ibf-profiler.c:264
msgid "number of common elements in A and B"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
+#: src/set/gnunet-set-ibf-profiler.c:270
msgid "hash num"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:292
+#: src/set/gnunet-set-ibf-profiler.c:276
msgid "ibf size"
msgstr ""
msgid "element size"
msgstr ""
+#: src/social/gnunet-social.c:1166
+#, fuzzy
+msgid "--place missing or invalid.\n"
+msgstr "Đối số không hợp lệ cho « %s ».\n"
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
+msgstr ""
+
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
+msgstr ""
+
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
+msgstr ""
+
+#: src/social/gnunet-social.c:1304
+#, fuzzy
+msgid "name or public key of ego"
+msgstr "Đối số không hợp lệ cho « %s ».\n"
+
+#: src/social/gnunet-social.c:1309
+#, fuzzy
+msgid "wait for incoming messages"
+msgstr "Lỗi gửi tin nhẳn.\n"
+
+#: src/social/gnunet-social.c:1315
+msgid "GNS name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
+msgstr ""
+
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
+msgstr ""
+
+#: src/social/gnunet-social.c:1333
+msgid "method name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "số tin nhắn cần dùng mỗi lần lặp"
+
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
+msgstr ""
+
#: src/sq/sq.c:54
#, c-format
msgid "Failure to bind %u-th SQL parameter\n"
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr "Đã tải %llu byte xuống « %s ».\n"
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
#, fuzzy
msgid "Failed to obtain statistics.\n"
msgstr "Lỗi lấy thông kê về truyền tải.\n"
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, fuzzy, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr "Lỗi lấy thông kê về truyền tải.\n"
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, fuzzy, c-format
msgid "No subsystem or name given\n"
msgstr "chưa đưa ra tên"
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, fuzzy, c-format
msgid "Failed to initialize watch routine\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, fuzzy, c-format
msgid "Invalid argument `%s'\n"
msgstr "Đối số không hợp lệ cho « %s ».\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, fuzzy, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr "Không thể kết nối tới %s:%u: %s\n"
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr "In ra thống kê về các thao tác GNUnet."
msgstr "Đối số không hợp lệ cho « %s ».\n"
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr ""
-#: src/testbed/gnunet_testbed_mpi_spawn.c:118
-#, fuzzy
-msgid "Waiting for child to exit.\n"
-msgstr "Đang đợi các đồng đẳng kết nối"
-
-#: src/testbed/gnunet_testbed_mpi_spawn.c:241
-#, fuzzy, c-format
-msgid "Spawning process `%s'\n"
-msgstr "Đang bắt đầu tài về « %s »\n"
-
-#: src/testbed/gnunet-testbed-profiler.c:287
+#: src/testbed/gnunet-testbed-profiler.c:289
msgid "tolerate COUNT number of continious timeout failures"
msgstr ""
-#: src/testbed/gnunet-testbed-profiler.c:291
+#: src/testbed/gnunet-testbed-profiler.c:294
msgid ""
"run profiler in non-interactive mode where upon testbed setup the profiler "
"does not wait for a keystroke but continues to run until a termination "
"signal is received"
msgstr ""
-#: src/testbed/testbed_api.c:400
+#: src/testbed/gnunet_testbed_mpi_spawn.c:118
+#, fuzzy
+msgid "Waiting for child to exit.\n"
+msgstr "Đang đợi các đồng đẳng kết nối"
+
+#: src/testbed/gnunet_testbed_mpi_spawn.c:241
+#, fuzzy, c-format
+msgid "Spawning process `%s'\n"
+msgstr "Đang bắt đầu tài về « %s »\n"
+
+#: src/testbed/testbed_api.c:410
#, fuzzy, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr "« %s » thất bại với mã lỗi %d: %s\n"
msgid "Hosts file %s cannot be read\n"
msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr "đặt số trình nền cần khởi chạy"
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, fuzzy, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr ""
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
#, fuzzy
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, fuzzy, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr "Không thể đọc danh sách bạn bè « %s »\n"
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, fuzzy, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr "Lỗi tạo thư mục tạm thời."
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, fuzzy, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, fuzzy, c-format
msgid "Failed to start `%s': %s\n"
msgstr "Lỗi chạy %s: %s %d\n"
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, fuzzy, c-format
msgid "Failed to load configuration from %s\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
#, fuzzy
msgid "# connect requests issued to ATS"
msgstr "# các yêu cầu máy/trình khách lỗ hổng được phun vào"
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
#, fuzzy
msgid "# HELLO messages gossipped"
msgstr "# các thông báo gửi đi bị loại bỏ"
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
#, fuzzy
msgid "# friends connected"
msgstr "# của các đồng đẳng đã kết nối"
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, fuzzy, c-format
msgid "Found friend `%s' in configuration\n"
msgstr ""
"\n"
"Kết thúc cấu hình.\n"
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
#, fuzzy
msgid "# friends in configuration"
msgstr ""
"\n"
"Kết thúc cấu hình.\n"
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
"Xác định quá ít bạn bè (dưới số tối thiểu). Sẽ chỉ kết nối tới bạn bè.\n"
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr "Cần thiết nhiều kết nối bạn bè hơn tổng số kết nối đích.\n"
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
#, fuzzy
msgid "# HELLO messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
#, fuzzy
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr "Lưu cấu hình ngay bây giờ không?"
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
#, fuzzy
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr "tăng sổ tối đa các kết nối TCP/IP"
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, fuzzy, c-format
msgid "Cannot create path to `%s'\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
#, fuzzy
msgid "# messages dropped due to slow client"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
#, fuzzy
msgid "# bytes payload discarded due to not connected peer"
msgstr "# Các quảng cáo đồng đẳng bị hủy do trọng tải"
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
#, fuzzy
msgid "# bytes total received"
msgstr "# tổng số nội dung lỗ hổng được nhận"
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
#, fuzzy
msgid "# bytes payload received"
msgstr "# các byte đã giải mã"
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, fuzzy, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr "Không thể nạp phần bổ sung truyền tải « %s »\n"
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, fuzzy, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr "Không thể lấy địa chỉ của đồng đẳng « %s ».\n"
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr "# các khoá phiên chạy được chấp nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
#, fuzzy
msgid "# DISCONNECT messages sent"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
#, fuzzy
msgid "# bytes in message queue for other peers"
msgstr "# các byte thông báo gửi đi bị loại bỏ"
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
#, fuzzy
msgid "# messages transmitted to other peers"
msgstr "# các byte kiểu %d được gửi "
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
#, fuzzy
msgid "# transmission failures for messages to other peers"
msgstr "# các byte thông báo gửi đi bị loại bỏ"
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
#, fuzzy
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
#, fuzzy
msgid "# KEEPALIVE messages discarded (no session)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
#, fuzzy
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
#, fuzzy
msgid "# messages discarded due to lack of neighbour record"
msgstr "# các thông báo được chắp liền"
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
#, fuzzy
msgid "# bandwidth quota violations by other peers"
msgstr "theo dõi gnunetd sử dụng dải thông"
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
#, fuzzy
msgid "# SYN_ACK messages sent"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "Lỗi sơ khởi dịch vụ « %s ».\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
#, fuzzy
msgid "# SYN messages received"
msgstr "# các thông báo PING được tạo"
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
#, fuzzy
msgid "# SYN_ACK messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
#, fuzzy
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
#, fuzzy
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
#, fuzzy
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
#, fuzzy
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr "gửi ĐẾM thông báo"
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
#, fuzzy
msgid "# ACK messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
#, fuzzy
msgid "# unexpected ACK messages"
msgstr "# các thông báo PONG đã mật mã được gửi"
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
#, fuzzy
msgid "# quota messages ignored (malformed)"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
#, fuzzy
msgid "# QUOTA messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
#, fuzzy
msgid "# DISCONNECT messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
#, fuzzy
msgid "# disconnected from peer upon explicit request"
msgstr "# các yêu cầu lỗ hổng bị bỏ do trọng tải"
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
#, fuzzy
msgid "# validations running"
msgstr "kho dữ liệu sqlite"
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
#, fuzzy
msgid "# PING message for different peer received"
msgstr "# các thông báo PING được tạo"
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, fuzzy, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr "Không thể tạo miền tên.\n"
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
#, fuzzy
msgid "# HELLOs given to peerinfo"
msgstr "Nhận được thông báo « %s » sai từ đồng đẳng « %s ».\n"
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+#, fuzzy
+msgid "receive data from peer"
+msgstr "Yêu cầu cấp %d từ đồng đẳng %d\n"
+
+#: src/transport/gnunet-transport-profiler.c:626
+#, fuzzy
+msgid "iterations"
+msgstr "Tùy chọn chung"
+
+#: src/transport/gnunet-transport-profiler.c:631
+#, fuzzy
+msgid "number of messages to send"
+msgstr "số tin nhắn cần dùng mỗi lần lặp"
+
+#: src/transport/gnunet-transport-profiler.c:636
+#, fuzzy
+msgid "message size to use"
+msgstr "kích cỡ tin nhắn"
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+#, fuzzy
+msgid "Direct access to transport service."
+msgstr "Lỗi kết nối đến gnunetd.\n"
+
+#: src/transport/gnunet-transport.c:413
#, fuzzy, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, fuzzy, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, fuzzy, c-format
msgid "Failed to connect to `%s'\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, fuzzy, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr "Lỗi đóng kết đến cổng %s %d.\n"
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "Không kết nối được đến trình nền gnunetd."
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, fuzzy, c-format
msgid "Transmitting %u bytes\n"
msgstr "Đang thử tải danh sách các máy xuống « %s »\n"
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, fuzzy, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr "« %.*s » được kết nối tới « %.*s ».\n"
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
#, fuzzy
msgid "Connected to"
msgstr "« %s » được kết nối tới « %s ».\n"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
#, fuzzy
msgid "Disconnected from"
msgstr "« %.*s » được kết nối tới « %.*s ».\n"
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, fuzzy, c-format
msgid "Received %u bytes\n"
msgstr "Nhận yêu cầu định tuyến\n"
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, fuzzy, c-format
msgid "Peer `%s': %s %s\n"
msgstr "Tôi là đồng đẳng « %s ».\n"
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
#, fuzzy
msgid "Failed to connect to transport service\n"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
#, fuzzy
msgid "print information for all peers (instead of only connected peers)"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
#, fuzzy
msgid "disconnect from a peer"
msgstr "Lỗi kết nối đến gnunetd.\n"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
#, fuzzy
msgid "provide information about all current connections (once)"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
#, fuzzy
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr "In ra thông tin về các đồng đẳng GNUnet."
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
#, fuzzy
msgid "do not resolve hostnames"
msgstr "không quyết định các tên máy"
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-#, fuzzy
-msgid "Direct access to transport service."
-msgstr "Lỗi kết nối đến gnunetd.\n"
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-#, fuzzy
-msgid "receive data from peer"
-msgstr "Yêu cầu cấp %d từ đồng đẳng %d\n"
-
-#: src/transport/gnunet-transport-profiler.c:586
-#, fuzzy
-msgid "iterations"
-msgstr "Tùy chọn chung"
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "số tin nhắn cần dùng mỗi lần lặp"
-
-#: src/transport/gnunet-transport-profiler.c:596
-#, fuzzy
-msgid "message size to use"
-msgstr "kích cỡ tin nhắn"
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, fuzzy, c-format
msgid "Shutting down plugin `%s'\n"
msgstr "Đang nạp các truyền tải « %s »\n"
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, fuzzy, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr "Tải lên « %s » hoàn thành, địa chỉ URI là « %s ».\n"
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, fuzzy, c-format
msgid "Maximum number of requests is %u\n"
msgstr "tăng sổ tối đa các kết nối TCP/IP"
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr "# các byte loại đi bởi SMTP (đi ra)"
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, fuzzy, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr "Gặp sự kiện bất thường: %d\n"
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
#, fuzzy
msgid "# TCP sessions active"
msgstr "# các khoá phiên chạy được chấp nhận"
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
#, fuzzy
msgid "# bytes currently in TCP buffers"
msgstr "# các byte đã gừi qua TCP"
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
#, fuzzy
msgid "# bytes discarded by TCP (disconnect)"
msgstr "# các byte loại đi bởi TCP (đi ra)"
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
#, fuzzy
msgid "# bytes discarded by TCP (timeout)"
msgstr "# các byte loại đi bởi TCP (đi ra)"
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
#, fuzzy
msgid "# bytes transmitted via TCP"
msgstr "# các byte được gửi"
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
#, fuzzy
msgid "# TCP WELCOME messages received"
msgstr "# các thông báo PONG đã mật mã được nhận"
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr "# các byte đã nhận qua TCP"
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr "# các kết nối dht"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
#, fuzzy
msgid "# TCP server connect events"
msgstr "# của các đồng đẳng đã kết nối"
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
#, fuzzy
msgid "Failed to start service.\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-#, fuzzy
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr "# các thông báo PONG đã mật mã được nhận"
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "« %s » không sẵn sàng.\n"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "« %s » không sẵn sàng.\n"
msgid "Failed to create UDP network sockets\n"
msgstr "Không thể tạo miền tên.\n"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+#, fuzzy
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr "# các thông báo PONG đã mật mã được nhận"
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr "# các khoá phiên chạy được chấp nhận"
+#: src/transport/plugin_transport_xt.c:4010
+#, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4014
+msgid "XT transport not listening on any port (client only)\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4018
+#, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr "# các khoá phiên chạy được chấp nhận"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "Không thể tạo miền tên.\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, fuzzy, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr "« %s » thất bại cho ổ đĩa « %s »: %u\n"
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr "« %s » bị lỗi cho cổng %d. Trình gnunetd có chạy chưa?\n"
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, fuzzy, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr "« %s » bị lỗi cho cổng %d. Trình gnunetd có chạy chưa?\n"
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, fuzzy, c-format
msgid "Unknown address family %d\n"
msgstr "\tKhông rõ miền tên « %s »\n"
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr "Đồng đẳng « %s » có mức tin cậy %8u\n"
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr "Không thể lấy thông tin về người dùng « %s »: %s\n"
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr "Không có người dùng như vậy"
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr "Không thể thay đổi người dùng/nhóm thành « %s »: %s\n"
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, fuzzy, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
#, fuzzy
msgid "Malformed configuration, exit ...\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
msgid "Could not access configuration file `%s'\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "GỠ LỖI"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "TIN"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr ""
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "CẢNH BÁO"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "LỖI"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr ""
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, fuzzy, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr "Thông điệp « %.*s » đã lặp lại %u lần trong %llu giây trước\n"
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr ""
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr ""
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr ""
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, fuzzy, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr ""
"Cấu hình không thỏa mãn các ràng buộc của tập tin đặc tả cấu hình « %s ».\n"
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, fuzzy, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, fuzzy, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr "%s bị lỗi tại %s:%d: « %s »\n"
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, fuzzy, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr "%s bị lỗi tại %s:%d: « %s »\n"
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, fuzzy, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n"
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, fuzzy, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n"
msgid "Could not load peer's private key\n"
msgstr "Không thể truy cập đến tập tin gnunet-directory « %s »\n"
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr "libgcrypt không có phiên bản mong đợi (yêu cầu phiên bản %s).\n"
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "Lỗi thẩm tra chữ ký RSA tại %s:%d: %s\n"
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr "Mong đợi « %s » là một thư mục.\n"
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, fuzzy, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
msgid "Sent DNS request to %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s: tùy chọn « %s » là mơ hồ\n"
msgid "%s: option `--%s' does not allow an argument\n"
msgstr "%s: tùy chọn « --%s » không cho phép đối số\n"
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr "%s: tùy chọn « %c%s » không cho phép đối số\n"
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s: tùy chọn « %s » cần thiết đối số\n"
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s: không nhận ra tùy chọn « --%s »\n"
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s: không nhận ra tùy chọn « %c%s »\n"
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s: tùy chọn không được phép -- %c\n"
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s: tùy chọn không hợp lệ -- %c\n"
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s: tùy chọn cần thiết đối số -- %c\n"
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s: tùy chọn « -W %s » là mơ hồ\n"
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr "%s: tùy chọn « -W %s » không cho phép đối số\n"
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, fuzzy, c-format
msgid "Use %s to get a list of options.\n"
msgstr ""
"Hãy sử dụng câu lệnh trợ giúp « --help » để xem danh sách các tùy chọn.\n"
-#: src/util/getopt.c:987
-#, fuzzy, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr "Tùy chọn « %s » không có nghĩa khi không có tùy chọn « %s ».\n"
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, fuzzy, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr "Giá trị cấu hình « %s » cho « %s » trong phần « %s » nên là con số\n"
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr "hiển thị số thứ tự phiên bản"
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
"Mọi đối số bắt buộc phải sử dụng với tùy chọn dài cũng bắt buộc với tùy chọn "
"ngắn.\n"
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr "hiển thị trợ giúp này"
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr "xuất chi tiết"
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr "cấu hình chức năng ghi sự kiện để dùng CẤP_GHI_LƯU"
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
#, fuzzy
msgid "configure logging to write logs to FILENAME"
msgstr "cấu hình chức năng ghi sự kiện để dùng CẤP_GHI_LƯU"
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr "cập nhật một giá trị trong tập tin cấu hình"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr "Phải gửi một con số cho tùy chọn « %s ».\n"
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, fuzzy, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr "Phải gửi một con số cho tùy chọn « %s ».\n"
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, fuzzy, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr "Phải gửi một con số cho tùy chọn « %s ».\n"
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, fuzzy, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr "Phải gửi một con số cho tùy chọn « %s ».\n"
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, fuzzy, c-format
msgid "%s or %s argument is required\n"
msgstr "đặt tên hiệu cần dùng (cần thiết)"
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr ""
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
#, fuzzy
msgid "print available configuration sections"
msgstr "Lưu cấu hình ngay bây giờ không?"
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
#, fuzzy
msgid "Manipulate GNUnet configuration files"
msgstr "cập nhật một giá trị trong tập tin cấu hình"
msgid "Failed to open `%s': %s\n"
msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, fuzzy, c-format
msgid ""
"\n"
"Failed to write to `%s': %s\n"
msgstr "Lỗi chạy %s: %s %d\n"
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, c-format
msgid ""
"\n"
"Finished!\n"
msgstr ""
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, fuzzy, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr "Khoá phiên chạy từ đồng đẳng « %s » không thể được thẩm tra.\n"
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, fuzzy, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr "Định dạng của tập tin « %s » là không hợp lệ.\n"
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, fuzzy, c-format
msgid "Could not read hostkey file: %s\n"
msgstr "Không thể đọc danh sách bạn bè « %s »\n"
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
#, fuzzy
msgid "Manipulate GNUnet private ECC key files"
msgstr "cập nhật một giá trị trong tập tin cấu hình"
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, fuzzy, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr "Ký hiệu mạng sai (không kết thúc với « ; »: « %s »)\n"
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
#, fuzzy
msgid "Manipulate GNUnet proof of work files"
msgstr "cập nhật một giá trị trong tập tin cấu hình"
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, fuzzy, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr "Ký hiệu mạng sai (không kết thúc với « ; »: « %s »)\n"
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr "Gặp lỗi khi tạo người dùng"
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr ""
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, fuzzy, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr "Không thể đọc danh sách bạn bè « %s »\n"
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, fuzzy, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr "« %s » thất bại cho ổ đĩa « %s »: %u\n"
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr "Không thể truy cập đến thông tin về không gian tên.\n"
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, fuzzy, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "Không thể lưu tập tin cấu hình « %s »:"
msgid "Could not resolve our FQDN: %s\n"
msgstr "Không thể giải quyết « %s » (%s): %s\n"
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr ""
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "b"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr ""
"Lỗi mở rộng biến môi trường « $HOME »: chưa đặt biến môi trường « HOME »"
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr ""
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr ""
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr ""
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "mg"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "g"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "p"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "g"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
#, fuzzy
msgid "day"
msgstr " ngày"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
#, fuzzy
msgid "days"
msgstr " ngày"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr ""
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr ""
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, fuzzy, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr "Mức ưu tiên tiến trình không hợp lê « %s ».\n"
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, fuzzy, c-format
msgid "Malformed port policy `%s'\n"
msgstr "Lỗi bắt đầu thu thập.\n"
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr "Địa chỉ IP định dạng sai: %s\n"
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr "Ký hiệu mạng sai (« /%d » không hợp lệ trong CIDR IPv4)."
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, fuzzy, c-format
msgid "Invalid format: `%s'\n"
msgstr "Địa chỉ IP định dạng sai: %s\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr "Ký hiệu mạng sai (không kết thúc với « ; »: « %s »)\n"
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, fuzzy, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr "Mặt nạ mạng có định dạng sai « %s »: %s\n"
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, fuzzy, c-format
msgid "Wrong format `%s' for network\n"
msgstr "Mạng có định dạng sai « %s »: %s\n"
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
#, fuzzy
msgid "# Active channels"
msgstr "# các kết nối dht"
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
#, fuzzy
msgid "# Messages dropped in cadet queue (overflow)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
#, fuzzy
msgid "# ICMP packets received from cadet"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
#, fuzzy
msgid "# UDP packets received from cadet"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
#, fuzzy
msgid "# TCP packets received from cadet"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr "# các truy vấn lỗ hổng được định tuyến"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
#, fuzzy
msgid "# Packets dropped (channel not yet online)"
msgstr "# các byte loại bỏ bởi UDP (đi ra)"
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
#, fuzzy
msgid "# Packets received from TUN interface"
msgstr "# các đáp ứng lỗ hổng được gửi cho trình/máy khách"
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
#, fuzzy
msgid "# Active destinations"
msgstr "# các kết nối dht"
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
#, fuzzy
msgid "Must specify valid IPv6 address"
msgstr "« %s » không sẵn sàng.\n"
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
#, fuzzy
msgid "Must specify valid IPv4 address"
msgstr "« %s » không sẵn sàng.\n"
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr ""
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
#, fuzzy
msgid "Failed to connect to the namestore!\n"
msgstr "Không kết nối được đến trình nền gnunetd."
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, fuzzy, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n"
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, fuzzy, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr "Lỗi nội bộ : khẳng định không thành công tại %s:%d.\n"
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr "« %s » thất bại ở tập tin « %s » tại %s:%d với lỗi: %s\n"
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr "# các khoá phiên chạy được chấp nhận"
-
-#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
-#~ msgstr "Không thể tạo miền tên.\n"
-
-#, fuzzy
-#~ msgid "Print information about DV state"
-#~ msgstr "In ra thông tin về các đồng đẳng GNUnet."
-
-#, fuzzy
-#~ msgid "Invalid tunnel owner `%s'\n"
-#~ msgstr "Địa chỉ IP định dạng sai: %s\n"
-
-#, fuzzy
-#~ msgid "Provide information about a particular tunnel"
-#~ msgstr "In ra thông tin về các đồng đẳng GNUnet."
-
-#, fuzzy
-#~ msgid "Failed to store membership information!\n"
-#~ msgstr "Lỗi mở tập tin ghi sự kiện « %s »: %s\n"
-
-#, fuzzy
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
-
-#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "Đối số không hợp lệ cho « %s ».\n"
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "Không thể mở tập tin « %s »: « %s »"
#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "Lỗi bắt đầu thu thập.\n"
+#~ msgid "enable adding the creation time to the metadata of the uploaded file"
+#~ msgstr "tắt thêm giờ tạo vào siêu dữ liệu của tập tin đã tải lên"
#, fuzzy
-#~ msgid "Failed to get fragment!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "« %s » không sẵn sàng.\n"
#, fuzzy
-#~ msgid "Failed to get message!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
+#~ msgid "Specify a timeout for the lookup"
+#~ msgstr "xác định mức ưu tiên của nội dung"
#, fuzzy
-#~ msgid "Failed to get message fragment!\n"
+#~ msgid "Unable to parse CAA record string `%s'\n"
#~ msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
#, fuzzy
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr "Lỗi bắt đầu thu thập.\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "Lỗi bắt đầu thu thập.\n"
-
-#, fuzzy
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "Lỗi bắt đầu thu thập.\n"
-
-#, fuzzy
-#~ msgid "Failed to begin synchronizing state!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
-
-#, fuzzy
-#~ msgid "Failed to end synchronizing state!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
-
-#, fuzzy
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
+#~ msgid "display private keys as well"
+#~ msgstr "hiển thị giá trị tổng kiểm của tập tin"
#, fuzzy
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr "Lỗi lấy thông kê về truyền tải.\n"
-
-#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
-#~ msgstr "Không thể sơ khởi SQLite: %s.\n"
-
-#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
-#~ msgstr "Lỗi đọc danh sách bạn bè từ « %s »\n"
-
-#, fuzzy
-#~ msgid "`%s' failed at %s:%d with error: %s (%d)\n"
-#~ msgstr "« %s » bị lỗi tại %s:%d với lỗi: %s\n"
+#~ msgid "The EGO to use"
+#~ msgstr "kích cỡ tin nhắn"
#, fuzzy
-#~ msgid "SQLite database running\n"
-#~ msgstr "kho dữ liệu sqlite"
+#~ msgid "OpenID Connect REST API initialized\n"
+#~ msgstr "Lỗi sơ khởi lõi.\n"
#, fuzzy
-#~ msgid "--place missing or invalid.\n"
-#~ msgstr "Đối số không hợp lệ cho « %s ».\n"
+#~ msgid "CONFIG REST API initialized\n"
+#~ msgstr "Lỗi sơ khởi lõi.\n"
#, fuzzy
-#~ msgid "name or public key of ego"
-#~ msgstr "Đối số không hợp lệ cho « %s ».\n"
+#~ msgid "Option `%s' can't be used with other options.\n"
+#~ msgstr "Tùy chọn « %s » không có nghĩa khi không có tùy chọn « %s ».\n"
#, fuzzy
-#~ msgid "wait for incoming messages"
-#~ msgstr "Lỗi gửi tin nhẳn.\n"
+#~ msgid "Invalid tunnel owner `%s'\n"
+#~ msgstr "Địa chỉ IP định dạng sai: %s\n"
#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "số tin nhắn cần dùng mỗi lần lặp"
+#~ msgid "Provide information about a particular tunnel"
+#~ msgstr "In ra thông tin về các đồng đẳng GNUnet."
#~ msgid "Could not resolve `%s' (%s): %s\n"
#~ msgstr "Không thể giải quyết « %s » (%s): %s\n"
#, fuzzy
#~ msgid ""
-#~ "%s service is lacking key configuration settings (%s). Using default "
-#~ "(%u).\n"
+#~ "%s service is lacking key configuration settings (%s). Using default (%"
+#~ "u).\n"
#~ msgstr "Lưu cấu hình ngay bây giờ không?"
#, fuzzy
#, fuzzy
#~ msgid ""
-#~ "Syntax error in topology specification at offset %llu, skipping bytes `"
-#~ "%s'.\n"
+#~ "Syntax error in topology specification at offset %llu, skipping bytes `%"
+#~ "s'.\n"
#~ msgstr ""
#~ "Lỗi cú pháp trong sự xác định địa hình học, đang bỏ qua các byte « %s ».\n"
#, fuzzy
#~ msgid ""
-#~ "(%s) `%s' was confirmed that you and only you received from him or her: "
-#~ "%s\n"
+#~ "(%s) `%s' was confirmed that you and only you received from him or her: %"
+#~ "s\n"
#~ msgstr "« %s » xác nhận mà chỉ bạn đa nhận được từ họ : %s\n"
#, fuzzy
#~ msgid "No interface specified in section `%s' under `%s'!\n"
#~ msgstr ""
-#~ "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « "
-#~ "%s ».\n"
+#~ "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « %"
+#~ "s ».\n"
#~ msgid ""
#~ "Could not find interface `%s' using `%s', trying to find another "
#~ msgid ""
#~ "No network interfaces defined in configuration section `%s' under `%s'!\n"
#~ msgstr ""
-#~ "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « "
-#~ "%s ».\n"
+#~ "Không có giao diện mạng được xác định trong cấu hình phần « %s » dưới « %"
+#~ "s ».\n"
#~ msgid "Setting open descriptor limit not supported.\n"
#~ msgstr "Không hỗ trợ chức năng đặt giới hạn bộ mô tả còn mở.\n"
#~ msgid "setkey `%s' from `%s' fails CRC check (have: %u, want %u).\n"
#~ msgstr ""
-#~ "Kiểm tra CRC setkey « %s » từ « %s » không thành công (có %u, còn muốn "
-#~ "%u).\n"
+#~ "Kiểm tra CRC setkey « %s » từ « %s » không thành công (có %u, còn muốn %"
+#~ "u).\n"
#~ msgid ""
#~ "Error parsing encrypted session key from `%s', given message part size is "
#~ msgid ""
#~ "%16llu of %16llu bytes inserted (estimating %6s to completion) - %s\n"
#~ msgstr ""
-#~ "đã chèn %16llu trên %16llu byte (sẽ hoàn thành trong khoảng %6s giây) - "
-#~ "%s\n"
+#~ "đã chèn %16llu trên %16llu byte (sẽ hoàn thành trong khoảng %6s giây) - %"
+#~ "s\n"
#~ msgid ""
#~ "Upload of `%s' complete, %llu bytes took %llu seconds (%8.3f KiB/s).\n"
#~ "`%s' registering client handlers %d %d %d %d %d %d %d %d and P2P handlers "
#~ "%d %d\n"
#~ msgstr ""
-#~ "« %s » đang đăng ký các trình điều khiển kiểu ứng dụng khách %d %d %d %d "
-#~ "%d %d %d %d và kiểu P2P %d %d\n"
+#~ "« %s » đang đăng ký các trình điều khiển kiểu ứng dụng khách %d %d %d %d %"
+#~ "d %d %d %d và kiểu P2P %d %d\n"
#~ msgid "enables (anonymous) file-sharing"
#~ msgstr "hiệu lực chia sẻ tập tin (nặc danh)"
#~ "`%s' transport OK. It took %ums to transmit %llu messages of %llu bytes "
#~ "each.\n"
#~ msgstr ""
-#~ "« %s » truyền tải OK. Cần %u miligiây để truyền đi %llu thông báo với "
-#~ "%llu byte mỗi cái.\n"
+#~ "« %s » truyền tải OK. Cần %u miligiây để truyền đi %llu thông báo với %"
+#~ "llu byte mỗi cái.\n"
#~ msgid " Transport %d is not being tested\n"
#~ msgstr " Truyền tải %d không đang thử\n"
#~ msgid "%s failed for url `%s' and post-data `%s' at %s:%d: `%s'\n"
#~ msgstr ""
-#~ "%s bị lỗi đối với địa chỉ URL « %s » và dữ liệu cuối « %s » tại %s:%d: « "
-#~ "%s »\n"
+#~ "%s bị lỗi đối với địa chỉ URL « %s » và dữ liệu cuối « %s » tại %s:%d: « %"
+#~ "s »\n"
#~ msgid "upnp: NAT Returned IP: %s\n"
#~ msgstr "upnp: địa chỉ IP được NAT trả về: %s\n"
#~ "insert sử dụng libextractor để trích các từ khoá khỏi tập tin. "
#~ "libextractor cũng có thể mở rộng động để quản lý định dạng tập tin bổ "
#~ "sung. Muốn sử dụng bộ trích bên ngoài tập hợp mặc định thì ghi rõ ở đây "
-#~ "những thư viện trích bổ sung. Định dạng là « [[-]tên_thư_viện[:"
-#~ "[-]tên_thư_viện]*] ».\n"
+#~ "những thư viện trích bổ sung. Định dạng là « [[-]tên_thư_viện[:[-]"
+#~ "tên_thư_viện]*] ».\n"
#~ "\n"
#~ "Mặc định là dùng tên tập tin, và ngắt từ lớn ở dấu cách, dấu gạch dưới v."
#~ "v. Đây nên ổn cho phần lớn người dùng. Dấu gạch nối « - » đằng trước một "
msgstr ""
"Project-Id-Version: gnunet-0.8.1\n"
"Report-Msgid-Bugs-To: gnunet-developers@mail.gnu.org\n"
-"POT-Creation-Date: 2019-07-24 17:45+0200\n"
+"POT-Creation-Date: 2019-02-09 22:07+0000\n"
"PO-Revision-Date: 2011-07-09 12:12+0800\n"
"Last-Translator: Wylmer Wang <wantinghard@gmail.com>\n"
"Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
-"Language: zh_CN\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
+"Language: zh_CN\n"
-#: src/arm/gnunet-arm.c:157
+#: src/arm/gnunet-arm.c:156
#, fuzzy, c-format
msgid "Failed to remove configuration file %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/arm/gnunet-arm.c:163
+#: src/arm/gnunet-arm.c:162
#, c-format
msgid "Failed to remove servicehome directory %s\n"
msgstr ""
-#: src/arm/gnunet-arm.c:223 src/testbed/gnunet-service-testbed_peers.c:1139
+#: src/arm/gnunet-arm.c:222 src/testbed/gnunet-service-testbed_peers.c:1139
msgid "Message was sent successfully"
msgstr ""
-#: src/arm/gnunet-arm.c:225 src/testbed/gnunet-service-testbed_peers.c:1141
+#: src/arm/gnunet-arm.c:224 src/testbed/gnunet-service-testbed_peers.c:1141
msgid "We disconnected from ARM before we could send a request"
msgstr ""
-#: src/arm/gnunet-arm.c:227 src/testbed/gnunet-service-testbed_peers.c:1143
+#: src/arm/gnunet-arm.c:226 src/testbed/gnunet-service-testbed_peers.c:1143
#, fuzzy
msgid "Unknown request status"
msgstr "未知的用户“%s”\n"
-#: src/arm/gnunet-arm.c:243
+#: src/arm/gnunet-arm.c:242
#, fuzzy
msgid "is stopped"
msgstr "服务已删除。\n"
-#: src/arm/gnunet-arm.c:245
+#: src/arm/gnunet-arm.c:244
msgid "is starting"
msgstr ""
-#: src/arm/gnunet-arm.c:247
+#: src/arm/gnunet-arm.c:246
msgid "is stopping"
msgstr ""
-#: src/arm/gnunet-arm.c:249
+#: src/arm/gnunet-arm.c:248
msgid "is starting already"
msgstr ""
-#: src/arm/gnunet-arm.c:251
+#: src/arm/gnunet-arm.c:250
msgid "is stopping already"
msgstr ""
-#: src/arm/gnunet-arm.c:253
+#: src/arm/gnunet-arm.c:252
msgid "is started already"
msgstr ""
-#: src/arm/gnunet-arm.c:255
+#: src/arm/gnunet-arm.c:254
msgid "is stopped already"
msgstr ""
-#: src/arm/gnunet-arm.c:257
+#: src/arm/gnunet-arm.c:256
#, fuzzy
msgid "service is not known to ARM"
msgstr "服务已删除。\n"
-#: src/arm/gnunet-arm.c:259
+#: src/arm/gnunet-arm.c:258
#, fuzzy
msgid "service failed to start"
msgstr "运行 %s失败:%s %d\n"
-#: src/arm/gnunet-arm.c:261
+#: src/arm/gnunet-arm.c:260
msgid "service cannot be manipulated because ARM is shutting down"
msgstr ""
-#: src/arm/gnunet-arm.c:263
+#: src/arm/gnunet-arm.c:262
#, fuzzy
msgid "Unknown result code."
msgstr "未知的用户“%s”\n"
-#: src/arm/gnunet-arm.c:294
+#: src/arm/gnunet-arm.c:295
msgid "Fatal error initializing ARM API.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:323 src/arm/gnunet-arm.c:332
+#: src/arm/gnunet-arm.c:324 src/arm/gnunet-arm.c:333
#, fuzzy, c-format
msgid "Failed to start the ARM service: %s\n"
msgstr "解析配置文件“%s”失败\n"
msgid "Failed to stop the ARM service: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/arm/gnunet-arm.c:417
+#: src/arm/gnunet-arm.c:419
#, fuzzy, c-format
msgid "Failed to send a request to start the `%s' service: %s\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/arm/gnunet-arm.c:427
+#: src/arm/gnunet-arm.c:429
#, fuzzy, c-format
msgid "Failed to start the `%s' service: %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/arm/gnunet-arm.c:466
+#: src/arm/gnunet-arm.c:467
#, fuzzy, c-format
msgid "Failed to send a request to kill the `%s' service: %%s\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/arm/gnunet-arm.c:477
+#: src/arm/gnunet-arm.c:478
#, fuzzy, c-format
msgid "Failed to kill the `%s' service: %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/arm/gnunet-arm.c:517
+#: src/arm/gnunet-arm.c:519
#, fuzzy, c-format
msgid "Failed to request a list of services: %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/arm/gnunet-arm.c:527
+#: src/arm/gnunet-arm.c:528
#, fuzzy
msgid "Error communicating with ARM. ARM not running?\n"
msgstr "连接 %s:%u 出错。守护程序在运行吗?\n"
-#: src/arm/gnunet-arm.c:533
+#: src/arm/gnunet-arm.c:534
msgid "Running services:\n"
msgstr ""
-#: src/arm/gnunet-arm.c:615
+#: src/arm/gnunet-arm.c:623
#, c-format
msgid "Now only monitoring, press CTRL-C to stop.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:649
+#: src/arm/gnunet-arm.c:656
#, c-format
msgid "Stopped %s.\n"
msgstr ""
-#: src/arm/gnunet-arm.c:652
+#: src/arm/gnunet-arm.c:659
#, fuzzy, c-format
msgid "Starting %s...\n"
msgstr "未知的命令“%s”。\n"
-#: src/arm/gnunet-arm.c:655
+#: src/arm/gnunet-arm.c:662
#, c-format
msgid "Stopping %s...\n"
msgstr ""
-#: src/arm/gnunet-arm.c:667
+#: src/arm/gnunet-arm.c:676
#, fuzzy, c-format
msgid "Unknown status %u for service %s.\n"
msgstr "未知的用户“%s”\n"
-#: src/arm/gnunet-arm.c:744
+#: src/arm/gnunet-arm.c:766
#, fuzzy
msgid "stop all GNUnet services"
msgstr "卸载 GNUnet 服务"
-#: src/arm/gnunet-arm.c:749
+#: src/arm/gnunet-arm.c:771
msgid "start a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:754
+#: src/arm/gnunet-arm.c:776
msgid "stop a particular service"
msgstr ""
-#: src/arm/gnunet-arm.c:759
+#: src/arm/gnunet-arm.c:780
#, fuzzy
msgid "start all GNUnet default services"
msgstr "卸载 GNUnet 服务"
-#: src/arm/gnunet-arm.c:764
+#: src/arm/gnunet-arm.c:784
#, fuzzy
msgid "stop and start all GNUnet default services"
msgstr "卸载 GNUnet 服务"
-#: src/arm/gnunet-arm.c:769
+#: src/arm/gnunet-arm.c:788
msgid "delete config file and directory on exit"
msgstr ""
-#: src/arm/gnunet-arm.c:773
+#: src/arm/gnunet-arm.c:792
msgid "monitor ARM activities"
msgstr ""
-#: src/arm/gnunet-arm.c:777
+#: src/arm/gnunet-arm.c:796
msgid "don't print status messages"
msgstr ""
-#: src/arm/gnunet-arm.c:784
+#: src/arm/gnunet-arm.c:801
msgid "exit with error status if operation does not finish after DELAY"
msgstr ""
-#: src/arm/gnunet-arm.c:789
+#: src/arm/gnunet-arm.c:805
msgid "list currently running services"
msgstr ""
-#: src/arm/gnunet-arm.c:794
+#: src/arm/gnunet-arm.c:809
msgid "don't let gnunet-service-arm inherit standard output"
msgstr ""
-#: src/arm/gnunet-arm.c:799
+#: src/arm/gnunet-arm.c:813
msgid "don't let gnunet-service-arm inherit standard error"
msgstr ""
-#: src/arm/gnunet-arm.c:812
+#: src/arm/gnunet-arm.c:828
msgid "Control services and the Automated Restart Manager (ARM)"
msgstr ""
#: src/arm/gnunet-service-arm.c:388 src/transport/plugin_transport_tcp.c:1120
-#: src/transport/tcp_service_legacy.c:557
+#: src/transport/plugin_transport_xt.c:1120
+#: src/transport/tcp_service_legacy.c:557 src/util/service.c:612
#, c-format
msgid ""
"Disabling IPv6 support for service `%s', failed to create IPv6 socket: %s\n"
#: src/arm/gnunet-service-arm.c:412 src/arm/gnunet-service-arm.c:418
#: src/transport/plugin_transport_tcp.c:1139
#: src/transport/plugin_transport_tcp.c:1145
-#: src/transport/plugin_transport_tcp.c:3835
+#: src/transport/plugin_transport_tcp.c:3829
+#: src/transport/plugin_transport_xt.c:1139
+#: src/transport/plugin_transport_xt.c:1145
+#: src/transport/plugin_transport_xt.c:3833
#: src/transport/tcp_service_legacy.c:576
-#: src/transport/tcp_service_legacy.c:582 src/util/service.c:1150
-#: src/util/service.c:1156
+#: src/transport/tcp_service_legacy.c:582 src/util/service.c:637
+#: src/util/service.c:643
#, c-format
msgid "Require valid port number for service `%s' in configuration!\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:457 src/transport/plugin_transport_tcp.c:1176
-#: src/transport/tcp_service_legacy.c:613 src/util/client.c:521
-#: src/util/service.c:1195
+#: src/transport/plugin_transport_xt.c:1176
+#: src/transport/tcp_service_legacy.c:613 src/util/client.c:506
+#: src/util/service.c:682
#, c-format
msgid "UNIXPATH `%s' too long, maximum length is %llu\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:462 src/transport/plugin_transport_tcp.c:1180
-#: src/transport/tcp_service_legacy.c:617 src/util/client.c:526
-#: src/util/service.c:1200
+#: src/transport/plugin_transport_xt.c:1180
+#: src/transport/tcp_service_legacy.c:617 src/util/client.c:511
+#: src/util/service.c:687
#, fuzzy, c-format
msgid "Using `%s' instead\n"
msgstr "%s:选项“%s”有歧义\n"
#: src/arm/gnunet-service-arm.c:495 src/transport/plugin_transport_tcp.c:1211
-#: src/transport/tcp_service_legacy.c:648 src/util/service.c:1236
+#: src/transport/plugin_transport_xt.c:1211
+#: src/transport/tcp_service_legacy.c:648 src/util/service.c:723
#, c-format
msgid ""
"Disabling UNIX domain socket support for service `%s', failed to create UNIX "
msgstr ""
#: src/arm/gnunet-service-arm.c:517 src/transport/plugin_transport_tcp.c:1228
-#: src/transport/tcp_service_legacy.c:665 src/util/service.c:1254
+#: src/transport/plugin_transport_xt.c:1228
+#: src/transport/tcp_service_legacy.c:665 src/util/service.c:741
#, c-format
msgid "Have neither PORT nor UNIXPATH for service `%s', but one is required\n"
msgstr ""
#: src/arm/gnunet-service-arm.c:556
#: src/transport/plugin_transport_http_server.c:2688
#: src/transport/plugin_transport_tcp.c:1259
-#: src/transport/tcp_service_legacy.c:696 src/util/service.c:1295
+#: src/transport/plugin_transport_xt.c:1259
+#: src/transport/tcp_service_legacy.c:696 src/util/service.c:782
#, fuzzy, c-format
msgid "Failed to resolve `%s': %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
#: src/arm/gnunet-service-arm.c:575
#: src/transport/plugin_transport_http_server.c:2706
#: src/transport/plugin_transport_tcp.c:1278
-#: src/transport/tcp_service_legacy.c:715 src/util/service.c:1315
+#: src/transport/plugin_transport_xt.c:1278
+#: src/transport/tcp_service_legacy.c:715 src/util/service.c:802
#, fuzzy, c-format
msgid "Failed to find %saddress for `%s'.\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
msgid "Initiating shutdown as requested by client.\n"
msgstr ""
-#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
-#, c-format
-msgid ""
-"Could not load quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2799
-#, c-format
-msgid ""
-"No outbound quota configured for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:2840
-#, c-format
-msgid ""
-"No outbound quota configure for network `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3294 src/ats-tests/gnunet-solver-eval.c:939
-msgid "solver to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3299 src/ats-tests/gnunet-solver-eval.c:945
-#: src/ats-tests/gnunet-solver-eval.c:950
-msgid "experiment to use"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3306
-#, fuzzy
-msgid "print logging"
-msgstr "未知的命令“%s”。\n"
-
-#: src/ats/gnunet-ats-solver-eval.c:3311
-msgid "save logging to disk"
-msgstr ""
-
-#: src/ats/gnunet-ats-solver-eval.c:3316
-msgid "disable normalization"
-msgstr ""
-
-#: src/ats/gnunet-service-ats-new.c:755
-#: src/ats/gnunet-service-ats_plugins.c:451
-#, fuzzy, c-format
-msgid "Failed to initialize solver `%s'!\n"
-msgstr "无法初始化 SQLite:%s。\n"
-
-#: src/ats/gnunet-service-ats_plugins.c:304
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:314
-#, c-format
-msgid "%s quota configured for network `%s' is %llu\n"
-msgstr ""
-
-#: src/ats/gnunet-service-ats_plugins.c:359
-#, c-format
-msgid ""
-"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats2_common.c:90
-#, c-format
-msgid ""
-"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
-"%llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1274
-msgid "Problem size too large, cannot allocate memory!\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1870
-#, c-format
-msgid "Adding address for peer `%s' multiple times\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:1914
-#, c-format
-msgid "Updating address property for peer `%s' %p not added before\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2476
-msgid ""
-"MLP solver is not optimizing for anything, changing to feasibility check\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
-#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
-#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
-#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
-#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
-#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
-#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
-#, fuzzy, c-format
-msgid "Invalid %s configuration %f \n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/ats/plugin_ats_mlp.c:2671
-#, c-format
-msgid ""
-"Adjusting inconsistent outbound quota configuration for network `%s', is "
-"%llu must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2680
-#, c-format
-msgid ""
-"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
-"must be at least %llu\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2690
-#, c-format
-msgid ""
-"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
-msgstr ""
-
-#: src/ats/plugin_ats_mlp.c:2699
-#, c-format
-msgid ""
-"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+#: src/ats-tests/ats-testing-log.c:837
+msgid "Stop logging\n"
msgstr ""
-#: src/ats/plugin_ats_proportional.c:1164
+#: src/ats-tests/ats-testing-log.c:892
#, fuzzy, c-format
-msgid "Invalid %s configuration %f\n"
-msgstr "解析配置文件“%s”失败\n"
+msgid "Start logging `%s'\n"
+msgstr "未知的命令“%s”。\n"
-#: src/ats-tests/ats-testing.c:419
+#: src/ats-tests/ats-testing.c:422
#, c-format
msgid "Connected master [%u] with slave [%u]\n"
msgstr ""
-#: src/ats-tests/ats-testing.c:426
+#: src/ats-tests/ats-testing.c:429
#, fuzzy, c-format
msgid "Failed to connect master peer [%u] with slave [%u]\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/ats-tests/ats-testing-log.c:837
-msgid "Stop logging\n"
-msgstr ""
-
-#: src/ats-tests/ats-testing-log.c:892
-#, fuzzy, c-format
-msgid "Start logging `%s'\n"
-msgstr "未知的命令“%s”。\n"
-
#: src/ats-tests/gnunet-ats-sim.c:90
#, c-format
msgid ""
"= %u KiB/s\n"
msgstr ""
+#: src/ats-tests/gnunet-solver-eval.c:939
+#: src/ats/gnunet-ats-solver-eval.c:3294
+msgid "solver to use"
+msgstr ""
+
+#: src/ats-tests/gnunet-solver-eval.c:945
+#: src/ats-tests/gnunet-solver-eval.c:950
+#: src/ats/gnunet-ats-solver-eval.c:3299
+msgid "experiment to use"
+msgstr ""
+
#: src/ats-tool/gnunet-ats.c:307
#, c-format
msgid "%u address resolutions had a timeout\n"
msgid "Print information about ATS state"
msgstr "无法获取有关用户“%s”的信息:%s\n"
+#: src/ats/gnunet-ats-solver-eval.c:2781 src/ats/gnunet-ats-solver-eval.c:2822
+#, c-format
+msgid ""
+"Could not load quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2799
+#, c-format
+msgid ""
+"No outbound quota configured for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:2840
+#, c-format
+msgid ""
+"No outbound quota configure for network `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3306
+#, fuzzy
+msgid "print logging"
+msgstr "未知的命令“%s”。\n"
+
+#: src/ats/gnunet-ats-solver-eval.c:3311
+msgid "save logging to disk"
+msgstr ""
+
+#: src/ats/gnunet-ats-solver-eval.c:3316
+msgid "disable normalization"
+msgstr ""
+
+#: src/ats/gnunet-service-ats-new.c:733
+#: src/ats/gnunet-service-ats_plugins.c:451
+#, fuzzy, c-format
+msgid "Failed to initialize solver `%s'!\n"
+msgstr "无法初始化 SQLite:%s。\n"
+
+#: src/ats/gnunet-service-ats_plugins.c:304
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth "
+"%llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:314
+#, c-format
+msgid "%s quota configured for network `%s' is %llu\n"
+msgstr ""
+
+#: src/ats/gnunet-service-ats_plugins.c:359
+#, c-format
+msgid ""
+"No %s-quota configured for network `%s', assigning default bandwidth %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats2_common.c:90
+#, c-format
+msgid ""
+"Could not load %s quota for network `%s': `%s', assigning default bandwidth %"
+"llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1274
+msgid "Problem size too large, cannot allocate memory!\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1870
+#, c-format
+msgid "Adding address for peer `%s' multiple times\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:1914
+#, c-format
+msgid "Updating address property for peer `%s' %p not added before\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2476
+msgid ""
+"MLP solver is not optimizing for anything, changing to feasibility check\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2516 src/ats/plugin_ats_mlp.c:2533
+#: src/ats/plugin_ats_mlp.c:2565 src/ats/plugin_ats_mlp.c:2583
+#: src/ats/plugin_ats_mlp.c:2602 src/ats/plugin_ats_proportional.c:1141
+#: src/ats/plugin_ats_ril.c:2612 src/ats/plugin_ats_ril.c:2629
+#: src/ats/plugin_ats_ril.c:2646 src/ats/plugin_ats_ril.c:2663
+#: src/ats/plugin_ats_ril.c:2680 src/ats/plugin_ats_ril.c:2697
+#: src/ats/plugin_ats_ril.c:2714 src/ats/plugin_ats_ril.c:2731
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f \n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/ats/plugin_ats_mlp.c:2671
+#, c-format
+msgid ""
+"Adjusting inconsistent outbound quota configuration for network `%s', is %"
+"llu must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2680
+#, c-format
+msgid ""
+"Adjusting inconsistent inbound quota configuration for network `%s', is %llu "
+"must be at least %llu\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2690
+#, c-format
+msgid ""
+"Adjusting outbound quota configuration for network `%s'from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_mlp.c:2699
+#, c-format
+msgid ""
+"Adjusting inbound quota configuration for network `%s' from %llu to %.0f\n"
+msgstr ""
+
+#: src/ats/plugin_ats_proportional.c:1164
+#, fuzzy, c-format
+msgid "Invalid %s configuration %f\n"
+msgstr "解析配置文件“%s”失败\n"
+
#: src/auction/gnunet-auction-create.c:163
msgid "description of the item to be sold"
msgstr ""
#: src/auction/gnunet-auction-info.c:76 src/auction/gnunet-auction-join.c:76
#: src/conversation/gnunet-conversation-test.c:254
-#: src/revocation/gnunet-revocation.c:561 src/template/gnunet-template.c:73
+#: src/revocation/gnunet-revocation.c:562 src/template/gnunet-template.c:76
msgid "help text"
msgstr ""
msgid "Extra arguments are not applicable in combination with this option.\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:794
+#: src/cadet/gnunet-cadet.c:795
#, fuzzy, c-format
msgid "Invalid target `%s'\n"
msgstr "“%s”的参数无效。\n"
-#: src/cadet/gnunet-cadet.c:829
+#: src/cadet/gnunet-cadet.c:832
msgid "No action requested\n"
msgstr ""
-#: src/cadet/gnunet-cadet.c:854
+#: src/cadet/gnunet-cadet.c:857
#, fuzzy
msgid "Provide information about a particular connection"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/cadet/gnunet-cadet.c:858
+#: src/cadet/gnunet-cadet.c:861
msgid "Activate echo mode"
msgstr ""
-#: src/cadet/gnunet-cadet.c:863
+#: src/cadet/gnunet-cadet.c:866
msgid "Listen for connections using a shared secret among sender and recipient"
msgstr ""
-#: src/cadet/gnunet-cadet.c:868
+#: src/cadet/gnunet-cadet.c:871
#, fuzzy
msgid "Provide information about a patricular peer"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/cadet/gnunet-cadet.c:872
+#: src/cadet/gnunet-cadet.c:875
#, fuzzy
msgid "Provide information about all peers"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/cadet/gnunet-cadet.c:876
+#: src/cadet/gnunet-cadet.c:879
#, fuzzy
msgid "Provide information about all tunnels"
msgstr "无法获取有关用户“%s”的信息:%s\n"
msgid "Connection to conversation service lost, trying to reconnect\n"
msgstr ""
+#: src/conversation/gnunet-conversation-test.c:120
+#, c-format
+msgid ""
+"\n"
+"End of transmission. Have a GNU day.\n"
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:145
+#, c-format
+msgid ""
+"\n"
+"We are now playing your recording back. If you can hear it, your audio "
+"settings are working..."
+msgstr ""
+
+#: src/conversation/gnunet-conversation-test.c:216
+#, c-format
+msgid ""
+"We will now be recording you for %s. After that time, the recording will be "
+"played back to you..."
+msgstr ""
+
#: src/conversation/gnunet-conversation.c:277
#, c-format
msgid "Incoming call from `%s'. Please /accept %u or /cancel %u the call.\n"
msgid "Enables having a conversation with other GNUnet users."
msgstr ""
-#: src/conversation/gnunet-conversation-test.c:120
-#, c-format
-msgid ""
-"\n"
-"End of transmission. Have a GNU day.\n"
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:145
-#, c-format
-msgid ""
-"\n"
-"We are now playing your recording back. If you can hear it, your audio "
-"settings are working..."
-msgstr ""
-
-#: src/conversation/gnunet-conversation-test.c:216
-#, c-format
-msgid ""
-"We will now be recording you for %s. After that time, the recording will be "
-"played back to you..."
-msgstr ""
-
-#: src/conversation/gnunet_gst.c:622
#: src/conversation/gnunet-helper-audio-playback-gst.c:361
+#: src/conversation/gnunet_gst.c:622
#, c-format
msgid "Read error from STDIN: %d %s\n"
msgstr ""
msgid "Failed to allocate %u bytes for second packet\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/conversation/gnunet-service-conversation.c:1238
+#: src/conversation/gnunet-service-conversation.c:1305
#, fuzzy, c-format
msgid "Could not open line, port %s already in use!\n"
msgstr "无法连接到 %s:%u:%s\n"
msgid "Could not start playback audio helper.\n"
msgstr ""
-#: src/core/gnunet-core.c:91
+#: src/core/gnunet-core.c:90
#, fuzzy
msgid "fresh connection"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/core/gnunet-core.c:94
+#: src/core/gnunet-core.c:93
msgid "key sent"
msgstr ""
-#: src/core/gnunet-core.c:97
+#: src/core/gnunet-core.c:96
msgid "key received"
msgstr ""
-#: src/core/gnunet-core.c:100
+#: src/core/gnunet-core.c:99
#, fuzzy
msgid "connection established"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/core/gnunet-core.c:103
+#: src/core/gnunet-core.c:102
msgid "rekeying"
msgstr ""
-#: src/core/gnunet-core.c:106
+#: src/core/gnunet-core.c:105
#, fuzzy
msgid "disconnected"
msgstr "“%s”已连接到“%s”。\n"
-#: src/core/gnunet-core.c:113
+#: src/core/gnunet-core.c:112
msgid "Connection to CORE service lost (reconnecting)"
msgstr ""
-#: src/core/gnunet-core.c:116
+#: src/core/gnunet-core.c:115
#, fuzzy
msgid "unknown state"
msgstr "未知错误"
-#: src/core/gnunet-core.c:121
+#: src/core/gnunet-core.c:120
#, c-format
msgid "%24s: %-30s %4s (timeout in %6s)\n"
msgstr ""
-#: src/core/gnunet-core.c:149 src/peerinfo-tool/gnunet-peerinfo.c:728
+#: src/core/gnunet-core.c:144 src/peerinfo-tool/gnunet-peerinfo.c:728
#, fuzzy, c-format
msgid "Invalid command line argument `%s'\n"
msgstr "“%s”的参数无效。\n"
msgid "Failed to connect to CORE service!\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/core/gnunet-core.c:178 src/transport/gnunet-transport.c:1385
+#: src/core/gnunet-core.c:177 src/transport/gnunet-transport.c:1449
msgid "provide information about all current connections (continuously)"
msgstr ""
-#: src/core/gnunet-core.c:188
+#: src/core/gnunet-core.c:186
msgid "Print information about connected peers."
msgstr ""
-#: src/core/gnunet-service-core.c:329
+#: src/core/gnunet-service-core.c:347
msgid "# send requests dropped (disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:355
+#: src/core/gnunet-service-core.c:371
msgid "# dequeuing CAR (duplicate request)"
msgstr ""
-#: src/core/gnunet-service-core.c:420
+#: src/core/gnunet-service-core.c:443
#, c-format
msgid "# bytes of messages of type %u received"
msgstr ""
-#: src/core/gnunet-service-core.c:508
+#: src/core/gnunet-service-core.c:541
msgid "# messages discarded (session disconnected)"
msgstr ""
-#: src/core/gnunet-service-core.c:828
+#: src/core/gnunet-service-core.c:879
#, c-format
msgid "# messages of type %u discarded (client busy)"
msgstr ""
-#: src/core/gnunet-service-core.c:929
+#: src/core/gnunet-service-core.c:988
#, fuzzy
msgid "Core service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "立即保存配置?"
-#: src/core/gnunet-service-core.c:948
+#: src/core/gnunet-service-core.c:1009
#, fuzzy, c-format
msgid "Core service of `%s' ready.\n"
msgstr "服务已删除。\n"
-#: src/core/gnunet-service-core_kx.c:623
+#: src/core/gnunet-service-core_kx.c:617
msgid "# bytes encrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:681
+#: src/core/gnunet-service-core_kx.c:677
msgid "# bytes decrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:778
+#: src/core/gnunet-service-core_kx.c:779
msgid "# PAYLOAD dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:828
+#: src/core/gnunet-service-core_kx.c:829
msgid "# key exchanges initiated"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:884
+#: src/core/gnunet-service-core_kx.c:891
msgid "# key exchanges stopped"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:916
+#: src/core/gnunet-service-core_kx.c:925
#, fuzzy
msgid "# PING messages transmitted"
msgstr "消息尺寸"
-#: src/core/gnunet-service-core_kx.c:974
+#: src/core/gnunet-service-core_kx.c:992
msgid "# old ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:988
+#: src/core/gnunet-service-core_kx.c:1005
msgid "# duplicate ephemeral keys ignored"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1023
+#: src/core/gnunet-service-core_kx.c:1040
msgid "# EPHEMERAL_KEYs rejected (bad signature)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1041
+#: src/core/gnunet-service-core_kx.c:1054
#, c-format
msgid ""
"EPHEMERAL_KEY from peer `%s' rejected as its validity range does not match "
"our system time (%llu not in [%llu,%llu]).\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1048
+#: src/core/gnunet-service-core_kx.c:1060
msgid "# EPHEMERAL_KEY messages rejected due to time"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1066
+#: src/core/gnunet-service-core_kx.c:1080
#, fuzzy
msgid "# valid ephemeral keys received"
msgstr "保存配置失败。"
-#: src/core/gnunet-service-core_kx.c:1165
-#: src/transport/gnunet-service-transport_validation.c:1129
+#: src/core/gnunet-service-core_kx.c:1180
+#: src/transport/gnunet-service-transport_validation.c:1128
msgid "# PING messages received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1175
+#: src/core/gnunet-service-core_kx.c:1189
msgid "# PING messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1224
+#: src/core/gnunet-service-core_kx.c:1248
msgid "# PONG messages created"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1249
+#: src/core/gnunet-service-core_kx.c:1274
msgid "# sessions terminated by timeout"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1262
+#: src/core/gnunet-service-core_kx.c:1287
msgid "# keepalive messages sent"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1319
-#: src/transport/gnunet-service-transport_validation.c:1462
+#: src/core/gnunet-service-core_kx.c:1351
+#: src/transport/gnunet-service-transport_validation.c:1461
msgid "# PONG messages received"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1327
+#: src/core/gnunet-service-core_kx.c:1358
msgid "# PONG messages dropped (connection down)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1334
+#: src/core/gnunet-service-core_kx.c:1363
msgid "# PONG messages dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1369
+#: src/core/gnunet-service-core_kx.c:1398
msgid "# PONG messages decrypted"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1407
+#: src/core/gnunet-service-core_kx.c:1436
msgid "# session keys confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1418
+#: src/core/gnunet-service-core_kx.c:1447
msgid "# timeouts prevented via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1426
+#: src/core/gnunet-service-core_kx.c:1454
msgid "# rekey operations confirmed via PONG"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1601
+#: src/core/gnunet-service-core_kx.c:1642
msgid "# DATA message dropped (out of order)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1612
+#: src/core/gnunet-service-core_kx.c:1650
#, c-format
msgid ""
"Session to peer `%s' went down due to key expiration (should not happen)\n"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1616
+#: src/core/gnunet-service-core_kx.c:1653
msgid "# sessions terminated by key expiration"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1694
-#: src/core/gnunet-service-core_kx.c:1721
+#: src/core/gnunet-service-core_kx.c:1742
+#: src/core/gnunet-service-core_kx.c:1768
msgid "# bytes dropped (duplicates)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1707
+#: src/core/gnunet-service-core_kx.c:1755
msgid "# bytes dropped (out of sequence)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1752
+#: src/core/gnunet-service-core_kx.c:1797
msgid "# bytes dropped (ancient message)"
msgstr ""
-#: src/core/gnunet-service-core_kx.c:1761
+#: src/core/gnunet-service-core_kx.c:1805
msgid "# bytes of payload decrypted"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:254
-#: src/core/gnunet-service-core_sessions.c:339
-#: src/dht/gnunet-service-dht_neighbours.c:740
-#: src/dht/gnunet-service-dht_neighbours.c:803
+#: src/core/gnunet-service-core_sessions.c:260
+#: src/core/gnunet-service-core_sessions.c:350
+#: src/dht/gnunet-service-dht_neighbours.c:741
+#: src/dht/gnunet-service-dht_neighbours.c:804
#: src/fs/gnunet-service-fs_cp.c:615 src/fs/gnunet-service-fs_cp.c:1521
-#: src/topology/gnunet-daemon-topology.c:581
-#: src/topology/gnunet-daemon-topology.c:673
+#: src/topology/gnunet-daemon-topology.c:617
+#: src/topology/gnunet-daemon-topology.c:719
#: src/transport/gnunet-service-transport_neighbours.c:720
#: src/transport/gnunet-service-transport_neighbours.c:728
msgid "# peers connected"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:287
+#: src/core/gnunet-service-core_sessions.c:296
msgid "# type map refreshes sent"
msgstr ""
-#: src/core/gnunet-service-core_sessions.c:402
+#: src/core/gnunet-service-core_sessions.c:416
#, fuzzy
msgid "# outdated typemap confirmations received"
msgstr "保存配置失败。"
-#: src/core/gnunet-service-core_sessions.c:420
+#: src/core/gnunet-service-core_sessions.c:433
#, fuzzy
msgid "# valid typemap confirmations received"
msgstr "保存配置失败。"
-#: src/core/gnunet-service-core_typemap.c:170
-#: src/core/gnunet-service-core_typemap.c:183
+#: src/core/gnunet-service-core_typemap.c:169
+#: src/core/gnunet-service-core_typemap.c:181
msgid "# type maps received"
msgstr ""
-#: src/core/gnunet-service-core_typemap.c:216
+#: src/core/gnunet-service-core_typemap.c:212
msgid "# updates to my type map"
msgstr ""
msgid "Unable to parse CRED record string `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:1267
+#: src/credential/gnunet-credential.c:264 src/namestore/gnunet-namestore.c:994
#, c-format
msgid "Ego `%s' not known to identity service\n"
msgstr ""
msgid "GNUnet credential resolver tool"
msgstr "GNUnet 错误日志"
-#: src/credential/gnunet-service-credential.c:1067 src/gns/gnunet-gns.c:214
-#: src/gns/gnunet-gns-helper-service-w32.c:727
+#: src/credential/gnunet-service-credential.c:1138
+#: src/gns/gnunet-gns-helper-service-w32.c:727 src/gns/gnunet-gns.c:185
#, fuzzy, c-format
msgid "Failed to connect to GNS\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/credential/gnunet-service-credential.c:1071
-#: src/namestore/gnunet-namestore.c:997
+#: src/credential/gnunet-service-credential.c:1144
#: src/namestore/gnunet-namestore-fcfsd.c:1138
+#: src/namestore/gnunet-namestore.c:1019
#, fuzzy, c-format
msgid "Failed to connect to namestore\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/credential/plugin_gnsrecord_credential.c:153
+#: src/credential/plugin_gnsrecord_credential.c:186
#, fuzzy, c-format
msgid "Unable to parse ATTR record string `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/credential/plugin_rest_credential.c:1128
-msgid "GNS REST API initialized\n"
-msgstr ""
-
#: src/datacache/datacache.c:119 src/datacache/datacache.c:311
#: src/datastore/gnunet-service-datastore.c:757
msgid "# bytes stored"
#: src/datacache/plugin_datacache_sqlite.c:118
#: src/datacache/plugin_datacache_sqlite.c:127
-#: src/datastore/plugin_datastore_mysql.c:891
+#: src/datastore/plugin_datastore_mysql.c:892
#: src/datastore/plugin_datastore_sqlite.c:58
#: src/datastore/plugin_datastore_sqlite.c:66 src/my/my.c:81 src/my/my.c:93
-#: src/mysql/mysql.c:47 src/mysql/mysql.c:65
+#: src/mysql/mysql.c:42 src/mysql/mysql.c:49
#: src/namecache/plugin_namecache_sqlite.c:52
#: src/namestore/plugin_namestore_sqlite.c:53
#: src/peerstore/plugin_peerstore_sqlite.c:52
+#: src/psycstore/plugin_psycstore_mysql.c:62
+#: src/reclaim/plugin_reclaim_sqlite.c:52
#: src/testbed/generate-underlay-topology.c:47
#: src/testbed/gnunet-daemon-latency-logger.c:52
#: src/testbed/gnunet-daemon-testbed-underlay.c:56
-#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:59
+#: src/testbed/testbed_api_hosts.c:69 src/util/crypto_ecc.c:53
#: src/util/crypto_ecc_setup.c:41 src/util/crypto_mpi.c:39
-#: src/include/gnunet_common.h:963 src/include/gnunet_common.h:982
+#: src/include/gnunet_common.h:818 src/include/gnunet_common.h:827
#: src/scalarproduct/scalarproduct.h:35
#, fuzzy, c-format
msgid "`%s' failed at %s:%d with error: %s\n"
#: src/datastore/plugin_datastore_sqlite.c:508
#: src/namecache/plugin_namecache_sqlite.c:229
#: src/namestore/plugin_namestore_sqlite.c:265
+#: src/reclaim/plugin_reclaim_sqlite.c:336
msgid "Tried to close sqlite without finalizing all prepared statements.\n"
msgstr ""
#: src/datastore/plugin_datastore_mysql.c:371
#: src/datastore/plugin_datastore_mysql.c:423
-#: src/datastore/plugin_datastore_mysql.c:1074
+#: src/datastore/plugin_datastore_mysql.c:1075
msgid "MySQL statement run failure"
msgstr ""
msgid "`%s' for `%s' failed at %s:%d with error: %s\n"
msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
-#: src/datastore/plugin_datastore_mysql.c:1179
+#: src/datastore/plugin_datastore_mysql.c:1180
+#: src/psycstore/plugin_psycstore_mysql.c:1936
msgid "Mysql database running\n"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:280
-#: src/datastore/plugin_datastore_postgres.c:897
+#: src/datastore/plugin_datastore_postgres.c:276
+#: src/datastore/plugin_datastore_postgres.c:893
msgid "Postgress exec failure"
msgstr ""
-#: src/datastore/plugin_datastore_postgres.c:858
+#: src/datastore/plugin_datastore_postgres.c:854
#, fuzzy
msgid "Failed to drop table from database.\n"
msgstr "发送消息失败。\n"
-#: src/datastore/plugin_datastore_postgres.c:956
+#: src/datastore/plugin_datastore_postgres.c:952
+#: src/psycstore/plugin_psycstore_postgres.c:1506
msgid "Postgres database running\n"
msgstr ""
#: src/namecache/plugin_namecache_sqlite.c:173
#: src/namestore/plugin_namestore_sqlite.c:206
#: src/peerstore/plugin_peerstore_sqlite.c:535
+#: src/psycstore/plugin_psycstore_sqlite.c:325
+#: src/reclaim/plugin_reclaim_sqlite.c:212
#, c-format
msgid "Unable to initialize SQLite: %s.\n"
msgstr "无法初始化 SQLite:%s。\n"
#: src/datastore/plugin_datastore_sqlite.c:1405
#: src/namecache/plugin_namecache_sqlite.c:557
-#: src/namestore/plugin_namestore_sqlite.c:751
+#: src/namestore/plugin_namestore_sqlite.c:750
+#: src/reclaim/plugin_reclaim_sqlite.c:711
#, fuzzy
msgid "Sqlite database running\n"
msgstr "sqlite 数据仓库"
msgid "Prints all packets that go through the DHT."
msgstr ""
-#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
-#, fuzzy, c-format
-msgid "Exiting as the number of peers is %u\n"
-msgstr "增加 TCP/IP 的最大连接数"
-
-#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:3081
-#, fuzzy
-msgid "number of peers to start"
-msgstr "迭代次数"
-
-#: src/dht/gnunet_dht_profiler.c:954
-msgid "number of PUTs to perform per peer"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
-#: src/testbed/gnunet-testbed-profiler.c:300
-msgid "name of the file with the login information for the testbed"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:964
-msgid "delay between rounds for collecting statistics (default: 30 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:969
-msgid "delay to start doing PUTs (default: 1 sec)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:974
-msgid "delay to start doing GETs (default: 5 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:979
-msgid "replication degree for DHT PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:984
-msgid "chance that a peer is selected at random for PUTs"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:989
-msgid "timeout for DHT PUT and GET requests (default: 1 min)"
-msgstr ""
-
-#: src/dht/gnunet_dht_profiler.c:1009
-#, fuzzy
-msgid "Measure quality and performance of the DHT service."
-msgstr "无法访问该服务"
-
#: src/dht/gnunet-dht-put.c:134
msgid "Must provide KEY and DATA for DHT put!\n"
msgstr ""
msgid "# FIND PEER messages initiated"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:851
+#: src/dht/gnunet-service-dht_neighbours.c:852
msgid "# requests TTL-dropped"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1053
-#: src/dht/gnunet-service-dht_neighbours.c:1096
+#: src/dht/gnunet-service-dht_neighbours.c:1055
+#: src/dht/gnunet-service-dht_neighbours.c:1098
msgid "# Peers excluded from routing due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1070
-#: src/dht/gnunet-service-dht_neighbours.c:1112
+#: src/dht/gnunet-service-dht_neighbours.c:1072
+#: src/dht/gnunet-service-dht_neighbours.c:1114
msgid "# Peer selection failed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1269
+#: src/dht/gnunet-service-dht_neighbours.c:1271
msgid "# PUT requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1302
+#: src/dht/gnunet-service-dht_neighbours.c:1304
msgid "# PUT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1313
-#: src/dht/gnunet-service-dht_neighbours.c:1453
-#: src/dht/gnunet-service-dht_neighbours.c:1556
+#: src/dht/gnunet-service-dht_neighbours.c:1315
+#: src/dht/gnunet-service-dht_neighbours.c:1455
+#: src/dht/gnunet-service-dht_neighbours.c:1558
msgid "# P2P messages dropped due to full queue"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1398
+#: src/dht/gnunet-service-dht_neighbours.c:1400
msgid "# GET requests routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1441
+#: src/dht/gnunet-service-dht_neighbours.c:1443
msgid "# GET messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1571
+#: src/dht/gnunet-service-dht_neighbours.c:1573
msgid "# RESULT messages queued for transmission"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1674
+#: src/dht/gnunet-service-dht_neighbours.c:1676
msgid "# Expired PUTs discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1682
+#: src/dht/gnunet-service-dht_neighbours.c:1684
msgid "# P2P PUT requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1686
+#: src/dht/gnunet-service-dht_neighbours.c:1688
msgid "# P2P PUT bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1912
+#: src/dht/gnunet-service-dht_neighbours.c:1914
msgid "# FIND PEER requests ignored due to Bloomfilter"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:1920
+#: src/dht/gnunet-service-dht_neighbours.c:1922
msgid "# FIND PEER requests ignored due to lack of HELLO"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2082
+#: src/dht/gnunet-service-dht_neighbours.c:2084
msgid "# P2P GET requests received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2086
+#: src/dht/gnunet-service-dht_neighbours.c:2088
msgid "# P2P GET bytes received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2151
+#: src/dht/gnunet-service-dht_neighbours.c:2153
msgid "# P2P FIND PEER requests processed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2172
+#: src/dht/gnunet-service-dht_neighbours.c:2174
msgid "# P2P GET requests ONLY routed"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2349
+#: src/dht/gnunet-service-dht_neighbours.c:2351
msgid "# Expired results discarded"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2365
+#: src/dht/gnunet-service-dht_neighbours.c:2367
msgid "# P2P RESULTS received"
msgstr ""
-#: src/dht/gnunet-service-dht_neighbours.c:2369
+#: src/dht/gnunet-service-dht_neighbours.c:2371
msgid "# P2P RESULT bytes received"
msgstr ""
msgid "# Entries removed from routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:414
+#: src/dht/gnunet-service-dht_routing.c:415
msgid "# Entries added to routing table"
msgstr ""
-#: src/dht/gnunet-service-dht_routing.c:436
+#: src/dht/gnunet-service-dht_routing.c:437
msgid "# DHT requests combined"
msgstr ""
+#: src/dht/gnunet_dht_profiler.c:916 src/testbed/gnunet-testbed-profiler.c:253
+#, fuzzy, c-format
+msgid "Exiting as the number of peers is %u\n"
+msgstr "增加 TCP/IP 的最大连接数"
+
+#: src/dht/gnunet_dht_profiler.c:949 src/rps/gnunet-rps-profiler.c:2953
+#, fuzzy
+msgid "number of peers to start"
+msgstr "迭代次数"
+
+#: src/dht/gnunet_dht_profiler.c:954
+msgid "number of PUTs to perform per peer"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:959 src/nse/gnunet-nse-profiler.c:860
+#: src/testbed/gnunet-testbed-profiler.c:304
+msgid "name of the file with the login information for the testbed"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:964
+msgid "delay between rounds for collecting statistics (default: 30 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:969
+msgid "delay to start doing PUTs (default: 1 sec)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:974
+msgid "delay to start doing GETs (default: 5 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:979
+msgid "replication degree for DHT PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:984
+msgid "chance that a peer is selected at random for PUTs"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:989
+msgid "timeout for DHT PUT and GET requests (default: 1 min)"
+msgstr ""
+
+#: src/dht/gnunet_dht_profiler.c:1009
+#, fuzzy
+msgid "Measure quality and performance of the DHT service."
+msgstr "无法访问该服务"
+
#: src/dht/plugin_block_dht.c:189
#, c-format
msgid "Block not of type %u\n"
msgid "# DNS requests received via TUN interface"
msgstr ""
-#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3563
+#: src/dns/gnunet-service-dns.c:1082 src/exit/gnunet-daemon-exit.c:3565
#, fuzzy
msgid "need a valid IPv4 or IPv6 address\n"
msgstr "无效的进程优先级“%s”\n"
-#: src/dns/gnunet-service-dns.c:1093
+#: src/dns/gnunet-service-dns.c:1092
#, c-format
-msgid "`%s' is not SUID or the path is invalid, will not run DNS interceptor\n"
+msgid "`%s' must be installed SUID, will not run DNS interceptor\n"
msgstr ""
+#: src/dv/gnunet-dv.c:175
+#, fuzzy
+msgid "Print information about DV state"
+msgstr "无法获取有关用户“%s”的信息:%s\n"
+
#: src/exit/gnunet-daemon-exit.c:960
msgid "# TCP packets sent via TUN"
msgstr ""
msgid "# ICMP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1338
+#: src/exit/gnunet-daemon-exit.c:1340
msgid "# UDP packets sent via TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1462 src/exit/gnunet-daemon-exit.c:1570
-#: src/exit/gnunet-daemon-exit.c:1617 src/exit/gnunet-daemon-exit.c:1699
-#: src/exit/gnunet-daemon-exit.c:1820 src/exit/gnunet-daemon-exit.c:1951
-#: src/exit/gnunet-daemon-exit.c:2205
+#: src/exit/gnunet-daemon-exit.c:1464 src/exit/gnunet-daemon-exit.c:1572
+#: src/exit/gnunet-daemon-exit.c:1619 src/exit/gnunet-daemon-exit.c:1701
+#: src/exit/gnunet-daemon-exit.c:1822 src/exit/gnunet-daemon-exit.c:1953
+#: src/exit/gnunet-daemon-exit.c:2207
msgid "# Bytes received from CADET"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1465
+#: src/exit/gnunet-daemon-exit.c:1467
msgid "# UDP IP-exit requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1573
+#: src/exit/gnunet-daemon-exit.c:1575
msgid "# UDP service requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1613
+#: src/exit/gnunet-daemon-exit.c:1615
msgid "# TCP service creation requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1702
+#: src/exit/gnunet-daemon-exit.c:1704
msgid "# TCP IP-exit creation requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1786
+#: src/exit/gnunet-daemon-exit.c:1788
msgid "# TCP DATA requests dropped (no session)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1823
+#: src/exit/gnunet-daemon-exit.c:1825
msgid "# TCP data requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:1954
+#: src/exit/gnunet-daemon-exit.c:1956
msgid "# ICMP IP-exit requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2020 src/exit/gnunet-daemon-exit.c:2277
-#: src/exit/gnunet-daemon-exit.c:2632 src/vpn/gnunet-service-vpn.c:818
-#: src/vpn/gnunet-service-vpn.c:992 src/vpn/gnunet-service-vpn.c:2088
+#: src/exit/gnunet-daemon-exit.c:2022 src/exit/gnunet-daemon-exit.c:2279
+#: src/exit/gnunet-daemon-exit.c:2634 src/vpn/gnunet-service-vpn.c:828
+#: src/vpn/gnunet-service-vpn.c:991 src/vpn/gnunet-service-vpn.c:2105
msgid "# ICMPv4 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2079 src/exit/gnunet-daemon-exit.c:2336
-#: src/exit/gnunet-daemon-exit.c:2669 src/vpn/gnunet-service-vpn.c:885
-#: src/vpn/gnunet-service-vpn.c:1028 src/vpn/gnunet-service-vpn.c:2147
+#: src/exit/gnunet-daemon-exit.c:2081 src/exit/gnunet-daemon-exit.c:2338
+#: src/exit/gnunet-daemon-exit.c:2671 src/vpn/gnunet-service-vpn.c:887
+#: src/vpn/gnunet-service-vpn.c:1024 src/vpn/gnunet-service-vpn.c:2158
msgid "# ICMPv6 packets dropped (type not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2208
+#: src/exit/gnunet-daemon-exit.c:2210
msgid "# ICMP service requests received via cadet"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2262 src/vpn/gnunet-service-vpn.c:984
-#: src/vpn/gnunet-service-vpn.c:2077
+#: src/exit/gnunet-daemon-exit.c:2264 src/vpn/gnunet-service-vpn.c:985
+#: src/vpn/gnunet-service-vpn.c:2096
msgid "# ICMPv4 packets dropped (impossible PT to v6)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2321 src/vpn/gnunet-service-vpn.c:871
-#: src/vpn/gnunet-service-vpn.c:2115 src/vpn/gnunet-service-vpn.c:2128
+#: src/exit/gnunet-daemon-exit.c:2323 src/vpn/gnunet-service-vpn.c:875
+#: src/vpn/gnunet-service-vpn.c:2130 src/vpn/gnunet-service-vpn.c:2141
msgid "# ICMPv6 packets dropped (impossible PT to v4)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2400 src/exit/gnunet-daemon-exit.c:3066
+#: src/exit/gnunet-daemon-exit.c:2402 src/exit/gnunet-daemon-exit.c:3068
#, fuzzy
msgid "# Inbound CADET channels created"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/exit/gnunet-daemon-exit.c:2520
+#: src/exit/gnunet-daemon-exit.c:2522
#, c-format
msgid "Got duplicate service records for `%s:%u'\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2539
+#: src/exit/gnunet-daemon-exit.c:2541
#, fuzzy
msgid "# Messages transmitted via cadet channels"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/exit/gnunet-daemon-exit.c:2717
+#: src/exit/gnunet-daemon-exit.c:2719
msgid "# ICMP packets dropped (not allowed)"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2725
+#: src/exit/gnunet-daemon-exit.c:2727
msgid "ICMP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2799
+#: src/exit/gnunet-daemon-exit.c:2801
msgid "UDP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2871
+#: src/exit/gnunet-daemon-exit.c:2873
msgid "TCP Packet dropped, have no matching connection information\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2919
+#: src/exit/gnunet-daemon-exit.c:2921
msgid "# Packets received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2933
+#: src/exit/gnunet-daemon-exit.c:2935
msgid "# Bytes received from TUN"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2959
+#: src/exit/gnunet-daemon-exit.c:2961
msgid "IPv4 packet options received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:2986
+#: src/exit/gnunet-daemon-exit.c:2988
#, c-format
msgid "IPv4 packet with unsupported next header %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3032
+#: src/exit/gnunet-daemon-exit.c:3034
#, c-format
msgid "IPv6 packet with unsupported next header %d received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3040
+#: src/exit/gnunet-daemon-exit.c:3042
#, c-format
msgid "Packet from unknown protocol %u received. Ignored.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3243 src/exit/gnunet-daemon-exit.c:3253
+#: src/exit/gnunet-daemon-exit.c:3245 src/exit/gnunet-daemon-exit.c:3255
#, fuzzy, c-format
msgid "Option `%s' for domain `%s' is not formatted correctly!\n"
msgstr "%s:选项“%s”有歧义\n"
-#: src/exit/gnunet-daemon-exit.c:3267 src/exit/gnunet-daemon-exit.c:3275
+#: src/exit/gnunet-daemon-exit.c:3269 src/exit/gnunet-daemon-exit.c:3277
#, c-format
msgid "`%s' is not a valid port number (for domain `%s')!"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3316
+#: src/exit/gnunet-daemon-exit.c:3318
#, c-format
msgid "No addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3330 src/exit/gnunet-daemon-exit.c:3343
+#: src/exit/gnunet-daemon-exit.c:3332 src/exit/gnunet-daemon-exit.c:3345
#, c-format
msgid "Service `%s' configured for IPv4, but IPv4 is disabled!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3355
+#: src/exit/gnunet-daemon-exit.c:3357
#, c-format
msgid "No IP addresses found for hostname `%s' of service `%s'!\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3499
+#: src/exit/gnunet-daemon-exit.c:3501
msgid ""
"This system does not support IPv4, will disable IPv4 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3507
+#: src/exit/gnunet-daemon-exit.c:3509
msgid ""
"This system does not support IPv6, will disable IPv6 functions despite them "
"being enabled in the configuration\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3514
+#: src/exit/gnunet-daemon-exit.c:3516
msgid ""
"Cannot enable IPv4 exit but disable IPv4 on TUN interface, will use "
"ENABLE_IPv4=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3520
+#: src/exit/gnunet-daemon-exit.c:3522
msgid ""
"Cannot enable IPv6 exit but disable IPv6 on TUN interface, will use "
"ENABLE_IPv6=YES\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3688
+#: src/exit/gnunet-daemon-exit.c:3690
msgid "Must be a number"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3803
+#: src/exit/gnunet-daemon-exit.c:3805
#, c-format
-msgid "`%s' is not SUID or the path is invalid, EXIT will not work\n"
+msgid "`%s' must be installed SUID, EXIT will not work\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3815 src/pt/gnunet-daemon-pt.c:1202
+#: src/exit/gnunet-daemon-exit.c:3817 src/pt/gnunet-daemon-pt.c:1204
msgid "No useful service enabled. Exiting.\n"
msgstr ""
-#: src/exit/gnunet-daemon-exit.c:3967
+#: src/exit/gnunet-daemon-exit.c:3966
msgid "Daemon to run to provide an IP exit node for the VPN"
msgstr ""
msgid "Publishing failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:725
-#, fuzzy, c-format
-msgid "Can not index file `%s': %s.\n"
-msgstr "找不到接口“%s”的一个 IP 地址。\n"
-
-#: src/fs/fs_publish.c:782 src/fs/fs_publish.c:827 src/fs/fs_publish.c:848
-#: src/fs/fs_publish.c:878 src/fs/fs_publish.c:1144
+#: src/fs/fs_publish.c:724 src/fs/fs_publish.c:778 src/fs/fs_publish.c:823
+#: src/fs/fs_publish.c:844 src/fs/fs_publish.c:874 src/fs/fs_publish.c:1140
#, c-format
msgid "Can not index file `%s': %s. Will try to insert instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:784
+#: src/fs/fs_publish.c:780
#, fuzzy
msgid "error on index-start request to `fs' service"
msgstr "初始化“%s”服务失败。\n"
-#: src/fs/fs_publish.c:829
+#: src/fs/fs_publish.c:825
msgid "failed to compute hash"
msgstr ""
-#: src/fs/fs_publish.c:849
+#: src/fs/fs_publish.c:845
msgid "filename too long"
msgstr ""
-#: src/fs/fs_publish.c:880
+#: src/fs/fs_publish.c:876
msgid "could not connect to `fs' service"
msgstr ""
-#: src/fs/fs_publish.c:906
+#: src/fs/fs_publish.c:902
#, fuzzy, c-format
msgid "Failed to get file identifiers for `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/fs/fs_publish.c:995 src/fs/fs_publish.c:1031
+#: src/fs/fs_publish.c:991 src/fs/fs_publish.c:1027
msgid "Can not create LOC URI. Will continue with CHK instead.\n"
msgstr ""
-#: src/fs/fs_publish.c:1098
+#: src/fs/fs_publish.c:1094
#, c-format
msgid "Recursive upload failed at `%s': %s"
msgstr ""
-#: src/fs/fs_publish.c:1106
+#: src/fs/fs_publish.c:1102
#, c-format
msgid "Recursive upload failed: %s"
msgstr ""
-#: src/fs/fs_publish.c:1146
+#: src/fs/fs_publish.c:1142
msgid "needs to be an actual file"
msgstr ""
-#: src/fs/fs_publish.c:1385
+#: src/fs/fs_publish.c:1381
#, fuzzy, c-format
msgid "Datastore failure: %s"
msgstr "“%s”已连接到“%s”。\n"
-#: src/fs/fs_publish.c:1476
+#: src/fs/fs_publish.c:1472
#, c-format
msgid "Reserving space for %u entries and %llu bytes for publication\n"
msgstr ""
msgid "Failed to compute hash of file."
msgstr ""
-#: src/fs/fs_uri.c:236
+#: src/fs/fs_uri.c:234
#, no-c-format
msgid "Malformed KSK URI (`%' must be followed by HEX number)"
msgstr ""
-#: src/fs/fs_uri.c:295
+#: src/fs/fs_uri.c:293
msgid "Malformed KSK URI (must not begin or end with `+')"
msgstr ""
-#: src/fs/fs_uri.c:313
+#: src/fs/fs_uri.c:311
msgid "Malformed KSK URI (`++' not allowed)"
msgstr ""
-#: src/fs/fs_uri.c:320
+#: src/fs/fs_uri.c:318
msgid "Malformed KSK URI (quotes not balanced)"
msgstr ""
-#: src/fs/fs_uri.c:390
+#: src/fs/fs_uri.c:388
msgid "Malformed SKS URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:431
+#: src/fs/fs_uri.c:429
msgid "Malformed CHK URI (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:446
+#: src/fs/fs_uri.c:444
msgid "Malformed CHK URI (failed to decode CHK)"
msgstr ""
-#: src/fs/fs_uri.c:525
+#: src/fs/fs_uri.c:523
msgid "LOC URI malformed (wrong syntax)"
msgstr ""
-#: src/fs/fs_uri.c:540
+#: src/fs/fs_uri.c:538
msgid "LOC URI malformed (no CHK)"
msgstr ""
-#: src/fs/fs_uri.c:550
+#: src/fs/fs_uri.c:548
msgid "LOC URI malformed (missing LOC)"
msgstr ""
-#: src/fs/fs_uri.c:558
+#: src/fs/fs_uri.c:556
msgid "LOC URI malformed (wrong syntax for public key)"
msgstr ""
-#: src/fs/fs_uri.c:566
+#: src/fs/fs_uri.c:564
msgid "LOC URI malformed (could not decode public key)"
msgstr ""
-#: src/fs/fs_uri.c:572
+#: src/fs/fs_uri.c:570
msgid "LOC URI malformed (could not find signature)"
msgstr ""
-#: src/fs/fs_uri.c:578
+#: src/fs/fs_uri.c:576
msgid "LOC URI malformed (wrong syntax for signature)"
msgstr ""
-#: src/fs/fs_uri.c:587
+#: src/fs/fs_uri.c:585
msgid "LOC URI malformed (could not decode signature)"
msgstr ""
-#: src/fs/fs_uri.c:593
+#: src/fs/fs_uri.c:591
msgid "LOC URI malformed (wrong syntax for expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:599
+#: src/fs/fs_uri.c:597
msgid "LOC URI malformed (could not parse expiration time)"
msgstr ""
-#: src/fs/fs_uri.c:611
+#: src/fs/fs_uri.c:609
msgid "LOC URI malformed (signature failed validation)"
msgstr ""
-#: src/fs/fs_uri.c:645
+#: src/fs/fs_uri.c:643
#, fuzzy
msgid "invalid argument"
msgstr "“%s”的参数无效。\n"
-#: src/fs/fs_uri.c:657
+#: src/fs/fs_uri.c:655
msgid "Unrecognized URI type"
msgstr ""
-#: src/fs/fs_uri.c:1061 src/fs/fs_uri.c:1088
+#: src/fs/fs_uri.c:1059 src/fs/fs_uri.c:1086
msgid "No keywords specified!\n"
msgstr ""
-#: src/fs/fs_uri.c:1094
+#: src/fs/fs_uri.c:1092
msgid "Number of double-quotes not balanced!\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:231
+#: src/fs/gnunet-auto-share.c:232
#, fuzzy, c-format
msgid "Failed to load state: %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/fs/gnunet-auto-share.c:279 src/fs/gnunet-auto-share.c:288
-#: src/fs/gnunet-auto-share.c:296
+#: src/fs/gnunet-auto-share.c:285 src/fs/gnunet-auto-share.c:295
+#: src/fs/gnunet-auto-share.c:305
#, fuzzy, c-format
msgid "Failed to save state to file %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/fs/gnunet-auto-share.c:393
+#: src/fs/gnunet-auto-share.c:407
#, c-format
msgid "Publication of `%s' done\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:472
+#: src/fs/gnunet-auto-share.c:494
#, c-format
msgid "Publishing `%s'\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:484
+#: src/fs/gnunet-auto-share.c:504
#, fuzzy, c-format
msgid "Failed to run `%s'\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/fs/gnunet-auto-share.c:654
+#: src/fs/gnunet-auto-share.c:713
#, c-format
msgid ""
"You must specify one and only one directory name for automatic publication.\n"
msgstr ""
-#: src/fs/gnunet-auto-share.c:705 src/fs/gnunet-publish.c:903
+#: src/fs/gnunet-auto-share.c:767 src/fs/gnunet-publish.c:903
msgid "set the desired LEVEL of sender-anonymity"
msgstr ""
-#: src/fs/gnunet-auto-share.c:712
+#: src/fs/gnunet-auto-share.c:772 src/fs/gnunet-publish.c:907
msgid "disable adding the creation time to the metadata of the uploaded file"
msgstr ""
-#: src/fs/gnunet-auto-share.c:718 src/fs/gnunet-publish.c:907
+#: src/fs/gnunet-auto-share.c:777 src/fs/gnunet-publish.c:912
msgid "do not use libextractor to add keywords or metadata"
msgstr ""
-#: src/fs/gnunet-auto-share.c:725 src/fs/gnunet-publish.c:944
+#: src/fs/gnunet-auto-share.c:783 src/fs/gnunet-publish.c:944
msgid "specify the priority of the content"
msgstr ""
-#: src/fs/gnunet-auto-share.c:732 src/fs/gnunet-publish.c:955
+#: src/fs/gnunet-auto-share.c:789 src/fs/gnunet-publish.c:955
msgid "set the desired replication LEVEL"
msgstr ""
-#: src/fs/gnunet-auto-share.c:754
+#: src/fs/gnunet-auto-share.c:813
msgid "Automatically publish files from a directory on GNUnet"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:216 src/fs/gnunet-publish.c:295
-#: src/fs/gnunet-search.c:215 src/fs/gnunet-unindex.c:107
+#: src/fs/gnunet-search.c:212 src/fs/gnunet-unindex.c:107
#, c-format
msgid "Unexpected status: %d\n"
msgstr ""
msgstr ""
#: src/fs/gnunet-download.c:291 src/fs/gnunet-publish.c:872
-#: src/fs/gnunet-search.c:273 src/fs/gnunet-unindex.c:139
+#: src/fs/gnunet-search.c:270 src/fs/gnunet-unindex.c:139
#, fuzzy, c-format
msgid "Could not initialize `%s' subsystem.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:315
+#: src/fs/gnunet-download.c:339 src/fs/gnunet-search.c:312
msgid "set the desired LEVEL of receiver-anonymity"
msgstr ""
msgid "delete incomplete downloads (when aborted with CTRL-C)"
msgstr ""
-#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:319
+#: src/fs/gnunet-download.c:349 src/fs/gnunet-search.c:316
msgid "only search the local peer (no P2P network search)"
msgstr ""
"chk/...)"
msgstr ""
-#: src/fs/gnunet-fs.c:119
-msgid "print a list of all indexed files"
-msgstr ""
-
-#: src/fs/gnunet-fs.c:130
-msgid "Special file-sharing operations"
-msgstr ""
-
#: src/fs/gnunet-fs-profiler.c:211
msgid "run the experiment with COUNT peers"
msgstr ""
msgid "run a testbed to measure file-sharing performance"
msgstr ""
+#: src/fs/gnunet-fs.c:119
+msgid "print a list of all indexed files"
+msgstr ""
+
+#: src/fs/gnunet-fs.c:130
+msgid "Special file-sharing operations"
+msgstr ""
+
#: src/fs/gnunet-publish.c:219 src/fs/gnunet-publish.c:231
#, c-format
msgid "Publishing `%s' at %llu/%llu (%s remaining)\n"
#: src/fs/gnunet-publish.c:687
#, fuzzy
-msgid "Error scanning directory.\n"
+msgid "Internal error scanning directory.\n"
msgstr "未知错误。\n"
#: src/fs/gnunet-publish.c:715
msgstr ""
#: src/fs/gnunet-publish.c:851 src/fs/gnunet-publish.c:859
-#: src/transport/gnunet-transport.c:1226 src/transport/gnunet-transport.c:1251
+#: src/transport/gnunet-transport.c:1282 src/transport/gnunet-transport.c:1309
#, c-format
msgid "Option `%s' makes no sense without option `%s'.\n"
msgstr ""
-#: src/fs/gnunet-publish.c:911
-msgid "enable adding the creation time to the metadata of the uploaded file"
-msgstr ""
-
#: src/fs/gnunet-publish.c:916
msgid ""
"print list of extracted keywords that would be used, but do not perform "
msgid "Failed to write directory with search results to `%s'\n"
msgstr ""
-#: src/fs/gnunet-search.c:207
+#: src/fs/gnunet-search.c:204
#, fuzzy, c-format
msgid "Error searching: %s.\n"
msgstr "创建用户出错"
-#: src/fs/gnunet-search.c:263
+#: src/fs/gnunet-search.c:260
msgid "Could not create keyword URI from arguments.\n"
msgstr ""
-#: src/fs/gnunet-search.c:287
+#: src/fs/gnunet-search.c:284
msgid "Could not start searching.\n"
msgstr ""
-#: src/fs/gnunet-search.c:324
+#: src/fs/gnunet-search.c:321
msgid "write search results to file starting with PREFIX"
msgstr ""
-#: src/fs/gnunet-search.c:329
+#: src/fs/gnunet-search.c:326
msgid "automatically terminate search after DELAY"
msgstr ""
-#: src/fs/gnunet-search.c:335
+#: src/fs/gnunet-search.c:332
msgid "automatically terminate search after VALUE results are found"
msgstr ""
-#: src/fs/gnunet-search.c:351
+#: src/fs/gnunet-search.c:348
msgid "Search GNUnet for files that were published on GNUnet"
msgstr ""
msgid "FS service is lacking HOSTKEY configuration setting. Exiting.\n"
msgstr "立即保存配置?"
-#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:353
-#: src/topology/gnunet-daemon-topology.c:1100
+#: src/fs/gnunet-service-fs.c:1305 src/hostlist/gnunet-daemon-hostlist.c:355
+#: src/topology/gnunet-daemon-topology.c:1202
#, fuzzy, c-format
msgid "Failed to connect to `%s' service.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/fs/gnunet-service-fs_cadet_client.c:355
+#: src/fs/gnunet-service-fs_cadet_client.c:370
msgid "# replies received via cadet"
msgstr ""
-#: src/fs/gnunet-service-fs_cadet_client.c:371
+#: src/fs/gnunet-service-fs_cadet_client.c:384
msgid "# replies received via cadet dropped"
msgstr ""
msgid "# query plan entries"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:328
+#: src/fs/gnunet-service-fs_pr.c:330
msgid "# Pending requests created"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:420 src/fs/gnunet-service-fs_pr.c:654
+#: src/fs/gnunet-service-fs_pr.c:430 src/fs/gnunet-service-fs_pr.c:677
msgid "# Pending requests active"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:830
+#: src/fs/gnunet-service-fs_pr.c:858
msgid "# replies received and matched"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:876
+#: src/fs/gnunet-service-fs_pr.c:894
msgid "# duplicate replies discarded (bloomfilter)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:884
+#: src/fs/gnunet-service-fs_pr.c:903
msgid "# irrelevant replies discarded"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:899
+#: src/fs/gnunet-service-fs_pr.c:918
#, c-format
msgid "Unsupported block type %u\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:912
+#: src/fs/gnunet-service-fs_pr.c:935
msgid "# results found locally"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1047
+#: src/fs/gnunet-service-fs_pr.c:1065
msgid "# Datastore `PUT' failures"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1076
+#: src/fs/gnunet-service-fs_pr.c:1093
msgid "# storage requests dropped due to high load"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1115
+#: src/fs/gnunet-service-fs_pr.c:1131
msgid "# Replies received from DHT"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1256
+#: src/fs/gnunet-service-fs_pr.c:1262
msgid "# Replies received from CADET"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1310
+#: src/fs/gnunet-service-fs_pr.c:1314
#, c-format
msgid "Datastore lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1331
+#: src/fs/gnunet-service-fs_pr.c:1335
#, c-format
msgid "On-demand lookup already took %s!\n"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1394
+#: src/fs/gnunet-service-fs_pr.c:1395
msgid "# requested DBLOCK or IBLOCK not found"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1456
+#: src/fs/gnunet-service-fs_pr.c:1454
msgid "# Datastore lookups concluded (error queueing)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1511
+#: src/fs/gnunet-service-fs_pr.c:1509
msgid "# Datastore lookups concluded (no results)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1526
+#: src/fs/gnunet-service-fs_pr.c:1524
msgid "# Datastore lookups concluded (seen all)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1549
+#: src/fs/gnunet-service-fs_pr.c:1548
msgid "# Datastore lookups aborted (more than MAX_RESULTS)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1566
+#: src/fs/gnunet-service-fs_pr.c:1562
msgid "# on-demand blocks matched requests"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1587
+#: src/fs/gnunet-service-fs_pr.c:1583
msgid "# on-demand lookups performed successfully"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1593
+#: src/fs/gnunet-service-fs_pr.c:1588
msgid "# on-demand lookups failed"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1634
+#: src/fs/gnunet-service-fs_pr.c:1626
msgid "# Datastore lookups concluded (found last result)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1647
+#: src/fs/gnunet-service-fs_pr.c:1639
msgid "# Datastore lookups concluded (load too high)"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1698
+#: src/fs/gnunet-service-fs_pr.c:1693
msgid "# Datastore lookups initiated"
msgstr ""
-#: src/fs/gnunet-service-fs_pr.c:1748
+#: src/fs/gnunet-service-fs_pr.c:1749
msgid "# GAP PUT messages received"
msgstr ""
msgid "Unindex a file that was previously indexed with gnunet-publish."
msgstr ""
-#: src/gns/gns_tld_api.c:293
+#: src/gns/gns_tld_api.c:348
msgid "Expected a base32-encoded public zone key\n"
msgstr ""
msgid "GNUnet HTTP server to create business cards"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:214
+#: src/gns/gnunet-dns2gns.c:203
#, fuzzy
msgid "Failed to pack DNS response into UDP packet!\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/gns/gnunet-dns2gns.c:416
+#: src/gns/gnunet-dns2gns.c:405
#, c-format
msgid "Cannot parse DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:432
+#: src/gns/gnunet-dns2gns.c:421
#, c-format
msgid "Received malformed DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:440
+#: src/gns/gnunet-dns2gns.c:429
#, c-format
msgid "Received unsupported DNS request from %s\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:600
+#: src/gns/gnunet-dns2gns.c:588
msgid "No DNS server specified!\n"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:748
+#: src/gns/gnunet-dns2gns.c:688
msgid "IP of recursive DNS resolver to use (required)"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:753
+#: src/gns/gnunet-dns2gns.c:693
msgid "UDP port to listen on for inbound DNS requests; default: 2853"
msgstr ""
-#: src/gns/gnunet-dns2gns.c:770
+#: src/gns/gnunet-dns2gns.c:710
msgid "GNUnet DNS-to-GNS proxy (a DNS server)"
msgstr ""
msgid "look for GNS2DNS records instead of ANY"
msgstr ""
-#: src/gns/gnunet-gns.c:206
-#, fuzzy, c-format
-msgid "`%s' is not a valid domain name\n"
-msgstr "“%s”不可用。\n"
-
-#: src/gns/gnunet-gns.c:225
-#, c-format
-msgid "Invalid typename specified, assuming `ANY'\n"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:260
-msgid "Lookup a record for the given name"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:266
-msgid "Specify the type of the record to lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:272
-msgid "Specify a timeout for the lookup"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:276
-msgid "No unneeded output"
-msgstr ""
-
-#: src/gns/gnunet-gns.c:288
-#, fuzzy
-msgid "GNUnet GNS resolver tool"
-msgstr "GNUnet 错误日志"
-
#: src/gns/gnunet-gns-helper-service-w32.c:602
msgid "Not ready to process requests, lacking ego data\n"
msgstr ""
msgid "This program will import some GNS authorities into your GNS namestore."
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:115
-#: src/hostlist/gnunet-daemon-hostlist_client.c:532
-#: src/hostlist/gnunet-daemon-hostlist_client.c:750
-#: src/hostlist/gnunet-daemon-hostlist_client.c:756
-#: src/hostlist/gnunet-daemon-hostlist_client.c:808
-#: src/hostlist/gnunet-daemon-hostlist_client.c:817
-#: src/hostlist/gnunet-daemon-hostlist_client.c:928
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1023
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1028
-#: src/transport/plugin_transport_http_client.c:595
-#: src/transport/plugin_transport_http_client.c:613
+#: src/gns/gnunet-gns-proxy.c:118
+#: src/hostlist/gnunet-daemon-hostlist_client.c:535
+#: src/hostlist/gnunet-daemon-hostlist_client.c:753
+#: src/hostlist/gnunet-daemon-hostlist_client.c:759
+#: src/hostlist/gnunet-daemon-hostlist_client.c:811
+#: src/hostlist/gnunet-daemon-hostlist_client.c:820
+#: src/hostlist/gnunet-daemon-hostlist_client.c:931
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1026
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1031
+#: src/transport/plugin_transport_http_client.c:598
+#: src/transport/plugin_transport_http_client.c:616
#, c-format
msgid "%s failed at %s:%d: `%s'\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:986
+#: src/gns/gnunet-gns-proxy.c:980
#, fuzzy, c-format
msgid "Unsupported CURL TLS backend %d\n"
msgstr "未知的命令“%s”。\n"
-#: src/gns/gnunet-gns-proxy.c:1011
+#: src/gns/gnunet-gns-proxy.c:1005
#, fuzzy, c-format
msgid "Failed to fetch CN from cert: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/gns/gnunet-gns-proxy.c:1032
+#: src/gns/gnunet-gns-proxy.c:1026
#, fuzzy, c-format
msgid "Failed to initialize DANE: %s\n"
msgstr "无法初始化 SQLite:%s。\n"
-#: src/gns/gnunet-gns-proxy.c:1047
+#: src/gns/gnunet-gns-proxy.c:1041
#, fuzzy, c-format
msgid "Failed to parse DANE record: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/gns/gnunet-gns-proxy.c:1062
+#: src/gns/gnunet-gns-proxy.c:1056
#, fuzzy, c-format
msgid "Failed to verify TLS connection using DANE: %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gns/gnunet-gns-proxy.c:1072
+#: src/gns/gnunet-gns-proxy.c:1066
#, c-format
msgid "Failed DANE verification failed with GnuTLS verify status code: %u\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1096
+#: src/gns/gnunet-gns-proxy.c:1090
#, c-format
msgid "TLS certificate subject name (%s) does not match `%s': %d\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:1227
+#: src/gns/gnunet-gns-proxy.c:1221
#, c-format
msgid "Cookie domain `%s' supplied by server is invalid\n"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:2128
+#: src/gns/gnunet-gns-proxy.c:2121
#, fuzzy, c-format
msgid "Unsupported HTTP method `%s'\n"
msgstr "未知的命令“%s”。\n"
-#: src/gns/gnunet-gns-proxy.c:2649
+#: src/gns/gnunet-gns-proxy.c:2642
#, fuzzy, c-format
msgid "Unable to import private key from file `%s'\n"
msgstr "无法创建用户账户:"
-#: src/gns/gnunet-gns-proxy.c:2681
+#: src/gns/gnunet-gns-proxy.c:2674
#, fuzzy, c-format
msgid "Unable to import certificate from `%s'\n"
msgstr "无法保存配置文件“%s”:"
-#: src/gns/gnunet-gns-proxy.c:2882
+#: src/gns/gnunet-gns-proxy.c:2875
#, fuzzy, c-format
msgid "Failed to start HTTPS server for `%s'\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/gns/gnunet-gns-proxy.c:2904 src/rest/gnunet-rest-server.c:704
+#: src/gns/gnunet-gns-proxy.c:2897 src/rest/gnunet-rest-server.c:658
#, fuzzy
msgid "Failed to pass client to MHD\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/gns/gnunet-gns-proxy.c:3240
+#: src/gns/gnunet-gns-proxy.c:3233
#, fuzzy, c-format
msgid "Unsupported socks version %d\n"
msgstr "未知的命令“%s”。\n"
-#: src/gns/gnunet-gns-proxy.c:3269
+#: src/gns/gnunet-gns-proxy.c:3262
#, fuzzy, c-format
msgid "Unsupported socks command %d\n"
msgstr "未知的命令“%s”。\n"
-#: src/gns/gnunet-gns-proxy.c:3352
+#: src/gns/gnunet-gns-proxy.c:3345
#, fuzzy, c-format
msgid "Unsupported socks address type %d\n"
msgstr "未知的命令“%s”。\n"
-#: src/gns/gnunet-gns-proxy.c:3690
+#: src/gns/gnunet-gns-proxy.c:3635
#, fuzzy, c-format
msgid "Failed to load X.509 key and certificate from `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gns/gnunet-gns-proxy.c:3818
+#: src/gns/gnunet-gns-proxy.c:3763
msgid "listen on specified port (default: 7777)"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3823
+#: src/gns/gnunet-gns-proxy.c:3768
msgid "pem file to use as CA"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3827
+#: src/gns/gnunet-gns-proxy.c:3772
msgid "disable use of IPv6"
msgstr ""
-#: src/gns/gnunet-gns-proxy.c:3853
+#: src/gns/gnunet-gns-proxy.c:3798
msgid "GNUnet GNS proxy"
msgstr ""
+#: src/gns/gnunet-gns.c:199
+#, c-format
+msgid "Invalid typename specified, assuming `ANY'\n"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:233
+msgid "Lookup a record for the given name"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:238
+msgid "Specify the type of the record to lookup"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:242
+msgid "No unneeded output"
+msgstr ""
+
+#: src/gns/gnunet-gns.c:258
+#, fuzzy
+msgid "GNUnet GNS resolver tool"
+msgstr "GNUnet 错误日志"
+
#: src/gns/gnunet-service-gns.c:506
#, fuzzy
msgid "Properly base32-encoded public key required"
msgstr "初始化“%s”服务失败。\n"
#: src/gns/gnunet-service-gns.c:561
-#: src/zonemaster/gnunet-service-zonemaster.c:875
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:440
+#: src/zonemaster/gnunet-service-zonemaster.c:875
#, fuzzy
msgid "Could not connect to DHT!\n"
msgstr "无法连接到 %s:%u:%s\n"
msgid "Unable to parse BOX record string `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gns/plugin_rest_gns.c:442
-msgid "Gns REST API initialized\n"
-msgstr ""
-
-#: src/gnsrecord/plugin_gnsrecord_dns.c:355
+#: src/gnsrecord/plugin_gnsrecord_dns.c:359
#, fuzzy, c-format
msgid "Unable to parse IPv4 address `%s'\n"
msgstr "无效的进程优先级“%s”\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:372
+#: src/gnsrecord/plugin_gnsrecord_dns.c:380
#, fuzzy, c-format
msgid "Failed to serialize NS record with value `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:392
+#: src/gnsrecord/plugin_gnsrecord_dns.c:402
#, fuzzy, c-format
msgid "Failed to serialize CNAME record with value `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:465
+#: src/gnsrecord/plugin_gnsrecord_dns.c:487
#, fuzzy, c-format
msgid "Failed to serialize CERT record with %u bytes\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:500
+#: src/gnsrecord/plugin_gnsrecord_dns.c:523
#, fuzzy, c-format
msgid "Unable to parse SOA record `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:517
+#: src/gnsrecord/plugin_gnsrecord_dns.c:542
#, fuzzy, c-format
msgid "Failed to serialize SOA record with mname `%s' and rname `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:536
+#: src/gnsrecord/plugin_gnsrecord_dns.c:565
#, fuzzy, c-format
msgid "Failed to serialize PTR record with value `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:555
+#: src/gnsrecord/plugin_gnsrecord_dns.c:588
#, fuzzy, c-format
msgid "Unable to parse MX record `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:567
+#: src/gnsrecord/plugin_gnsrecord_dns.c:603
#, fuzzy, c-format
msgid "Failed to serialize MX record with hostname `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:588
+#: src/gnsrecord/plugin_gnsrecord_dns.c:630
#, fuzzy, c-format
msgid "Unable to parse SRV record `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:601
+#: src/gnsrecord/plugin_gnsrecord_dns.c:646
#, fuzzy, c-format
msgid "Failed to serialize SRV record with target `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:618
+#: src/gnsrecord/plugin_gnsrecord_dns.c:663
#, fuzzy, c-format
msgid "Unable to parse IPv6 address `%s'\n"
msgstr "无效的进程优先级“%s”\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:636
-#: src/gnsrecord/plugin_gnsrecord_dns.c:650
+#: src/gnsrecord/plugin_gnsrecord_dns.c:687
+#: src/gnsrecord/plugin_gnsrecord_dns.c:703
#, fuzzy, c-format
msgid "Unable to parse TLSA record string `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/gnsrecord/plugin_gnsrecord_dns.c:668
-#, fuzzy, c-format
-msgid "Unable to parse CAA record string `%s'\n"
-msgstr "解析配置文件“%s”失败\n"
-
#: src/hello/gnunet-hello.c:126
msgid "Call with name of HELLO file to modify.\n"
msgstr ""
msgid "Modified %u addresses, wrote %u bytes\n"
msgstr ""
-#: src/hello/hello.c:1109
+#: src/hello/hello.c:1110
#, fuzzy
msgid "Failed to parse HELLO message: missing expiration time\n"
msgstr "保存配置失败。"
-#: src/hello/hello.c:1118
+#: src/hello/hello.c:1119
#, fuzzy
msgid "Failed to parse HELLO message: invalid expiration time\n"
msgstr "保存配置失败。"
-#: src/hello/hello.c:1128
+#: src/hello/hello.c:1129
#, fuzzy
msgid "Failed to parse HELLO message: malformed\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/hello/hello.c:1139
+#: src/hello/hello.c:1140
msgid "Failed to parse HELLO message: missing transport plugin\n"
msgstr ""
-#: src/hello/hello.c:1157
+#: src/hello/hello.c:1158
#, c-format
msgid "Plugin `%s' not found, skipping address\n"
msgstr ""
-#: src/hello/hello.c:1165
+#: src/hello/hello.c:1166
#, c-format
msgid "Plugin `%s' does not support URIs yet\n"
msgstr ""
-#: src/hello/hello.c:1180
+#: src/hello/hello.c:1181
#, fuzzy, c-format
msgid "Failed to parse `%s' as an address for plugin `%s'\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/hostlist/gnunet-daemon-hostlist.c:314
+#: src/hostlist/gnunet-daemon-hostlist.c:316
msgid ""
"None of the functions for the hostlist daemon were enabled. I have no "
"reason to run!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:374
+#: src/hostlist/gnunet-daemon-hostlist.c:376
msgid "advertise our hostlist to other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:379
+#: src/hostlist/gnunet-daemon-hostlist.c:381
msgid ""
"bootstrap using hostlists (it is highly recommended that you always use this "
"option)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:383
+#: src/hostlist/gnunet-daemon-hostlist.c:385
msgid "enable learning about hostlist servers from other peers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:388
+#: src/hostlist/gnunet-daemon-hostlist.c:390
msgid "provide a hostlist server"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist.c:404
+#: src/hostlist/gnunet-daemon-hostlist.c:406
msgid "GNUnet hostlist server and client"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:346
+#: src/hostlist/gnunet-daemon-hostlist_client.c:349
msgid "# bytes downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:367
-#: src/hostlist/gnunet-daemon-hostlist_client.c:400
+#: src/hostlist/gnunet-daemon-hostlist_client.c:370
+#: src/hostlist/gnunet-daemon-hostlist_client.c:403
msgid "# invalid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:370
-#: src/hostlist/gnunet-daemon-hostlist_client.c:403
+#: src/hostlist/gnunet-daemon-hostlist_client.c:373
+#: src/hostlist/gnunet-daemon-hostlist_client.c:406
#, c-format
msgid "Invalid `%s' message received from hostlist at `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:388
+#: src/hostlist/gnunet-daemon-hostlist_client.c:391
msgid "# valid HELLOs downloaded from hostlist servers"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:658
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
+#: src/hostlist/gnunet-daemon-hostlist_client.c:661
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1407
msgid "# advertised hostlist URIs"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:688
+#: src/hostlist/gnunet-daemon-hostlist_client.c:691
#, c-format
msgid "# advertised URI `%s' downloaded"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:731
+#: src/hostlist/gnunet-daemon-hostlist_client.c:734
#, c-format
msgid ""
"Advertised hostlist with URI `%s' could not be downloaded. Advertised URI "
"gets dismissed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:859
+#: src/hostlist/gnunet-daemon-hostlist_client.c:862
#, c-format
msgid "Timeout trying to download hostlist from `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:873
+#: src/hostlist/gnunet-daemon-hostlist_client.c:876
#, c-format
msgid "Download limit of %u bytes exceeded, stopping download\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:893
+#: src/hostlist/gnunet-daemon-hostlist_client.c:896
#, fuzzy, c-format
msgid "Download of hostlist from `%s' failed: `%s'\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:899
+#: src/hostlist/gnunet-daemon-hostlist_client.c:902
#, c-format
msgid "Download of hostlist `%s' completed.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:907
+#: src/hostlist/gnunet-daemon-hostlist_client.c:910
#, c-format
msgid "Adding successfully tested hostlist `%s' datastore.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:960
+#: src/hostlist/gnunet-daemon-hostlist_client.c:963
#, c-format
msgid "Bootstrapping using hostlist at `%s'.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:968
+#: src/hostlist/gnunet-daemon-hostlist_client.c:971
msgid "# hostlist downloads initiated"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1095
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1662
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1098
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1665
msgid "# milliseconds between hostlist downloads"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1104
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1107
#, c-format
msgid "Have %u/%u connections. Will consider downloading hostlist in %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1163
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1184
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1166
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1187
msgid "# active connections"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1350
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1353
#, c-format
msgid "Loading saved hostlist entries from file `%s' \n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1355
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1358
#, c-format
msgid "Hostlist file `%s' does not exist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1364
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1367
#, fuzzy, c-format
msgid "Could not open file `%s' for reading to load hostlists: %s\n"
msgstr "无法解析“%s”来确定已方的 IP 地址:%s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1398
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
#, c-format
msgid "%u hostlist URIs loaded from file\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1401
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1404
msgid "# hostlist URIs read from file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1447
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1450
#, fuzzy, c-format
msgid "Could not open file `%s' for writing to save hostlists: %s\n"
msgstr "无法解析“%s”来确定已方的 IP 地址:%s\n"
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1454
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1457
#, c-format
msgid "Writing %u hostlist URIs to `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1478
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1495
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1481
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1498
#, c-format
msgid "Error writing hostlist URIs to file `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1490
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1493
msgid "# hostlist URIs written to file"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1592
-#: src/transport/plugin_transport_http_client.c:2271
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1595
+#: src/transport/plugin_transport_http_client.c:2274
#, c-format
msgid "Invalid proxy type: `%s', disabling proxy! Check configuration!\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1621
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1624
msgid "Learning is enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1635
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1638
msgid "Learning is not enabled on this peer\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_client.c:1648
+#: src/hostlist/gnunet-daemon-hostlist_client.c:1651
#, c-format
msgid ""
"Since learning is not enabled on this peer, hostlist file `%s' was removed\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:172
+#: src/hostlist/gnunet-daemon-hostlist_server.c:176
msgid "bytes in hostlist"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:198
+#: src/hostlist/gnunet-daemon-hostlist_server.c:201
msgid "expired addresses encountered"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:235
-#: src/hostlist/gnunet-daemon-hostlist_server.c:526
+#: src/hostlist/gnunet-daemon-hostlist_server.c:237
+#: src/hostlist/gnunet-daemon-hostlist_server.c:531
#: src/peerinfo-tool/gnunet-peerinfo.c:385
#: src/peerinfo-tool/gnunet-peerinfo.c:534
-#: src/topology/gnunet-daemon-topology.c:801
+#: src/topology/gnunet-daemon-topology.c:862
#, c-format
msgid "Error in communication with PEERINFO service: %s\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:256
+#: src/hostlist/gnunet-daemon-hostlist_server.c:261
msgid "HELLOs without addresses encountered (ignored)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:274
+#: src/hostlist/gnunet-daemon-hostlist_server.c:278
msgid "bytes not included in hostlist (size limit)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:376
+#: src/hostlist/gnunet-daemon-hostlist_server.c:382
#, c-format
msgid "Refusing `%s' request to hostlist server\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:380
+#: src/hostlist/gnunet-daemon-hostlist_server.c:385
msgid "hostlist requests refused (not HTTP GET)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:393
+#: src/hostlist/gnunet-daemon-hostlist_server.c:397
#, c-format
msgid "Refusing `%s' request with %llu bytes of upload data\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:398
+#: src/hostlist/gnunet-daemon-hostlist_server.c:401
msgid "hostlist requests refused (upload data)"
msgstr ""
msgid "hostlist requests refused (not ready)"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:417
+#: src/hostlist/gnunet-daemon-hostlist_server.c:416
msgid "Received request for our hostlist\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:419
+#: src/hostlist/gnunet-daemon-hostlist_server.c:418
msgid "hostlist requests processed"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:460
+#: src/hostlist/gnunet-daemon-hostlist_server.c:466
msgid "# hostlist advertisements send"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:673
-#: src/transport/gnunet-service-transport.c:2651
+#: src/hostlist/gnunet-daemon-hostlist_server.c:679
+#: src/transport/gnunet-service-transport.c:2814
msgid "Could not access PEERINFO service. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:684
+#: src/hostlist/gnunet-daemon-hostlist_server.c:691
#, c-format
msgid "Invalid port number %llu. Exiting.\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:696
+#: src/hostlist/gnunet-daemon-hostlist_server.c:703
#, c-format
msgid "Hostlist service starts on %s:%llu\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:713
+#: src/hostlist/gnunet-daemon-hostlist_server.c:718
#, c-format
msgid "Address to obtain hostlist: `%s'\n"
msgstr ""
-#: src/hostlist/gnunet-daemon-hostlist_server.c:728
+#: src/hostlist/gnunet-daemon-hostlist_server.c:731
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "“%s”不可用。\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:742
+#: src/hostlist/gnunet-daemon-hostlist_server.c:748
#, fuzzy
msgid "BINDTOIP does not a valid IPv4 address! Ignoring BINDTOIPV6.\n"
msgstr "“%s”不可用。\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:764
+#: src/hostlist/gnunet-daemon-hostlist_server.c:769
#, fuzzy, c-format
msgid "`%s' is not a valid IPv4 address! Ignoring BINDTOIPV4.\n"
msgstr "“%s”不可用。\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:785
+#: src/hostlist/gnunet-daemon-hostlist_server.c:789
#, fuzzy, c-format
msgid "`%s' is not a valid IPv6 address! Ignoring BINDTOIPV6.\n"
msgstr "“%s”不可用。\n"
-#: src/hostlist/gnunet-daemon-hostlist_server.c:828
+#: src/hostlist/gnunet-daemon-hostlist_server.c:829
#, c-format
msgid "Could not start hostlist HTTP server on port %u\n"
msgstr ""
-#: src/identity/gnunet-identity.c:193
+#: src/identity/gnunet-identity.c:179
#, fuzzy, c-format
msgid "Failed to create ego: %s\n"
msgstr "发送消息失败。\n"
-#: src/identity/gnunet-identity.c:233
+#: src/identity/gnunet-identity.c:201
#, fuzzy, c-format
msgid "Failed to set default ego: %s\n"
msgstr "发送消息失败。\n"
-#: src/identity/gnunet-identity.c:391
+#: src/identity/gnunet-identity.c:356
msgid "create ego NAME"
msgstr ""
-#: src/identity/gnunet-identity.c:396
+#: src/identity/gnunet-identity.c:362
msgid "delete ego NAME "
msgstr ""
-#: src/identity/gnunet-identity.c:400
+#: src/identity/gnunet-identity.c:367
msgid "display all egos"
msgstr ""
-#: src/identity/gnunet-identity.c:404
-msgid "reduce output"
-msgstr ""
-
-#: src/identity/gnunet-identity.c:411
+#: src/identity/gnunet-identity.c:373
msgid ""
-"set default identity to NAME for a subsystem SUBSYSTEM (use together with -"
-"s) or restrict results to NAME (use together with -d)"
+"set default identity to EGO for a subsystem SUBSYSTEM (use together with -s)"
msgstr ""
-#: src/identity/gnunet-identity.c:415
+#: src/identity/gnunet-identity.c:378
msgid "run in monitor mode egos"
msgstr ""
-#: src/identity/gnunet-identity.c:419
-#, fuzzy
-msgid "display private keys as well"
-msgstr "显示一个文件的散列值"
-
-#: src/identity/gnunet-identity.c:426
+#: src/identity/gnunet-identity.c:384
msgid ""
"set default identity to EGO for a subsystem SUBSYSTEM (use together with -e)"
msgstr ""
-#: src/identity/gnunet-identity.c:438
+#: src/identity/gnunet-identity.c:398
msgid "Maintain egos"
msgstr ""
-#: src/identity/gnunet-service-identity.c:511
+#: src/identity/gnunet-service-identity.c:391
msgid "no default known"
msgstr ""
-#: src/identity/gnunet-service-identity.c:536
+#: src/identity/gnunet-service-identity.c:416
msgid "default configured, but ego unknown (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:627
-#: src/identity/gnunet-service-identity.c:910
-#: src/identity/gnunet-service-identity.c:1038
+#: src/identity/gnunet-service-identity.c:507
+#: src/identity/gnunet-service-identity.c:790
+#: src/identity/gnunet-service-identity.c:918
#, fuzzy, c-format
msgid "Failed to write subsystem default identifier map to `%s'.\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/identity/gnunet-service-identity.c:635
+#: src/identity/gnunet-service-identity.c:515
msgid "Unknown ego specified for service (internal error)"
msgstr ""
-#: src/identity/gnunet-service-identity.c:730
+#: src/identity/gnunet-service-identity.c:610
msgid "identifier already in use for another ego"
msgstr ""
-#: src/identity/gnunet-service-identity.c:885
+#: src/identity/gnunet-service-identity.c:765
msgid "target name already exists"
msgstr ""
-#: src/identity/gnunet-service-identity.c:928
-#: src/identity/gnunet-service-identity.c:1056
+#: src/identity/gnunet-service-identity.c:808
+#: src/identity/gnunet-service-identity.c:936
msgid "no matching ego found"
msgstr ""
-#: src/identity/gnunet-service-identity.c:1091
+#: src/identity/gnunet-service-identity.c:971
#, fuzzy, c-format
msgid "Failed to parse ego information in `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/identity/gnunet-service-identity.c:1149
+#: src/identity/gnunet-service-identity.c:1029
#, fuzzy, c-format
msgid "Failed to parse subsystem identity configuration file `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/identity/gnunet-service-identity.c:1159
+#: src/identity/gnunet-service-identity.c:1039
#, fuzzy, c-format
msgid "Failed to create directory `%s' for storing egos\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/identity/plugin_rest_identity.c:1311
-msgid "Identity REST API initialized\n"
-msgstr ""
-
-#: src/json/json.c:133
+#: src/json/json.c:123
#, fuzzy, c-format
msgid "Failed to parse JSON in option `%s': %s (%s)\n"
msgstr "解析配置文件“%s”失败\n"
+#: src/multicast/gnunet-multicast.c:48 src/multicast/gnunet-multicast.c:72
+msgid "This command doesn't do anything yet."
+msgstr ""
+
#: src/my/my.c:196 src/my/my.c:215
#, fuzzy, c-format
msgid "%s failed at %s:%d with error: %s\n"
msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
-#: src/mysql/mysql.c:201
+#: src/mysql/mysql.c:180
#, c-format
msgid "Trying to use file `%s' for MySQL configuration.\n"
msgstr ""
-#: src/mysql/mysql.c:209
+#: src/mysql/mysql.c:187
#, fuzzy, c-format
msgid "Could not access file `%s': %s\n"
msgstr "无法解析“%s”(%s):%s\n"
msgid "No records found for `%s'"
msgstr "运行 %s失败:%s %d\n"
-#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:459
+#: src/namecache/gnunet-namecache.c:122 src/namestore/gnunet-namestore.c:454
#, c-format
msgid "\tCorrupt or unsupported record of type %u\n"
msgstr ""
msgid "You must specify a name\n"
msgstr "您必须指定一个接收方!\n"
-#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1601
+#: src/namecache/gnunet-namecache.c:232 src/namestore/gnunet-namestore.c:1575
msgid "name of the record to add/delete/display"
msgstr ""
#: src/namecache/gnunet-namecache.c:238
-msgid "specifies the public key of the zone to look in"
+msgid "spezifies the public key of the zone to look in"
msgstr ""
-#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1662
+#: src/namecache/gnunet-namecache.c:250 src/namestore/gnunet-namestore.c:1632
#, fuzzy
msgid "GNUnet zone manipulation tool"
msgstr "GNUnet 配置"
#: src/namecache/plugin_namecache_flat.c:121
#: src/namecache/plugin_namecache_flat.c:255
-#: src/namestore/plugin_namestore_flat.c:179
-#: src/namestore/plugin_namestore_flat.c:427
+#: src/namestore/plugin_namestore_heap.c:148
+#: src/namestore/plugin_namestore_heap.c:395
#: src/peerstore/plugin_peerstore_flat.c:379
#: src/peerstore/plugin_peerstore_flat.c:538
#, fuzzy, c-format
msgstr "无法初始化 SQLite:%s。\n"
#: src/namecache/plugin_namecache_flat.c:132
-#: src/namestore/plugin_namestore_flat.c:190
+#: src/namestore/plugin_namestore_heap.c:159
#: src/peerstore/plugin_peerstore_flat.c:394
#, fuzzy, c-format
msgid "Unable to get filesize: %s.\n"
msgstr "发送消息失败。\n"
#: src/namecache/plugin_namecache_flat.c:151
+#: src/namestore/plugin_namestore_heap.c:172
#: src/peerstore/plugin_peerstore_flat.c:406
#, fuzzy, c-format
msgid "Unable to read file: %s.\n"
msgid "Failed to setup database at `%s'\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/namestore/gnunet-namestore.c:334
+#: src/namestore/gnunet-namestore-fcfsd.c:549
+#, fuzzy, c-format
+msgid "Unsupported form value `%s'\n"
+msgstr "未知的命令“%s”。\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:576
+#, fuzzy, c-format
+msgid "Failed to create record for domain `%s': %s\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:597
+msgid "Error when mapping zone to name\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:629
+#, c-format
+msgid "Found existing name `%s' for the given key\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:689
+#, c-format
+msgid "Found %u existing records for domain `%s'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:777
+#, fuzzy, c-format
+msgid "Failed to create page for `%s'\n"
+msgstr "发送消息失败。\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:796
+#, fuzzy, c-format
+msgid "Failed to setup post processor for `%s'\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:832
+msgid "Domain name must not contain `.'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:841
+msgid "Domain name must not contain `+'\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1071
+msgid "No ego configured for `fcfsd` subsystem\n"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1099
+#, fuzzy
+msgid "Failed to start HTTP server\n"
+msgstr "初始化“%s”服务失败。\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1147
+#, fuzzy
+msgid "Failed to connect to identity\n"
+msgstr "初始化“%s”服务失败。\n"
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1173
+msgid "name of the zone that is to be managed by FCFSD"
+msgstr ""
+
+#: src/namestore/gnunet-namestore-fcfsd.c:1192
+msgid "GNU Name System First Come First Serve name registration service"
+msgstr ""
+
+#: src/namestore/gnunet-namestore.c:341
#, c-format
msgid "Adding record failed: %s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:362
+#: src/namestore/gnunet-namestore.c:371
#, c-format
msgid "Deleting record failed, record does not exist%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:369
+#: src/namestore/gnunet-namestore.c:378
#, c-format
msgid "Deleting record failed%s%s\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:656 src/namestore/gnunet-namestore.c:666
+#: src/namestore/gnunet-namestore.c:660 src/namestore/gnunet-namestore.c:668
#, c-format
msgid "A %s record exists already under `%s', no other records can be added.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:678
-#, c-format
-msgid ""
-"A SOA record exists already under `%s', cannot add a second SOA to the same "
-"zone.\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:694 src/namestore/gnunet-namestore.c:707
+#: src/namestore/gnunet-namestore.c:682 src/namestore/gnunet-namestore.c:694
#, c-format
msgid "Records already exist under `%s', cannot add `%s' record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:722
+#: src/namestore/gnunet-namestore.c:707
#, c-format
msgid ""
"Non-GNS2DNS records already exist under `%s', cannot add GNS2DNS record.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:842
+#: src/namestore/gnunet-namestore.c:837
#, c-format
msgid "There are no records under label `%s' that could be deleted.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:885
+#: src/namestore/gnunet-namestore.c:878
#, c-format
msgid ""
"There are no records under label `%s' that match the request for deletion.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:966
+#: src/namestore/gnunet-namestore.c:965
#, fuzzy, c-format
msgid "Failed to replace records: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/namestore/gnunet-namestore.c:989
+#: src/namestore/gnunet-namestore.c:1009
#, c-format
msgid "No options given\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1010 src/namestore/gnunet-namestore.c:1043
-#: src/namestore/gnunet-namestore.c:1053 src/namestore/gnunet-namestore.c:1071
-#: src/namestore/gnunet-namestore.c:1092 src/namestore/gnunet-namestore.c:1119
+#: src/namestore/gnunet-namestore.c:1032 src/namestore/gnunet-namestore.c:1065
+#: src/namestore/gnunet-namestore.c:1074 src/namestore/gnunet-namestore.c:1093
+#: src/namestore/gnunet-namestore.c:1116 src/namestore/gnunet-namestore.c:1148
#, fuzzy, c-format
msgid "Missing option `%s' for operation `%s'\n"
msgstr "配置文件“%s”已写入。\n"
-#: src/namestore/gnunet-namestore.c:1012
+#: src/namestore/gnunet-namestore.c:1033
msgid "replace"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1045 src/namestore/gnunet-namestore.c:1055
-#: src/namestore/gnunet-namestore.c:1073 src/namestore/gnunet-namestore.c:1094
+#: src/namestore/gnunet-namestore.c:1066 src/namestore/gnunet-namestore.c:1075
+#: src/namestore/gnunet-namestore.c:1094 src/namestore/gnunet-namestore.c:1118
msgid "add"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1063
+#: src/namestore/gnunet-namestore.c:1084
#, fuzzy, c-format
msgid "Unsupported type `%s'\n"
msgstr "未知的命令“%s”。\n"
-#: src/namestore/gnunet-namestore.c:1082
+#: src/namestore/gnunet-namestore.c:1106
#, c-format
msgid "Value `%s' invalid for record type `%s'\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1101
+#: src/namestore/gnunet-namestore.c:1129
#, fuzzy, c-format
msgid "Invalid time format `%s'\n"
msgstr "IP 格式无效:“%s”\n"
-#: src/namestore/gnunet-namestore.c:1121
+#: src/namestore/gnunet-namestore.c:1149
msgid "del"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1164
+#: src/namestore/gnunet-namestore.c:1192
#, fuzzy, c-format
msgid "Invalid public key for reverse lookup `%s'\n"
msgstr "“%s”的参数无效。\n"
-#: src/namestore/gnunet-namestore.c:1187
+#: src/namestore/gnunet-namestore.c:1221
#: src/peerinfo-tool/gnunet-peerinfo.c:775
#, fuzzy, c-format
msgid "Invalid URI `%s'\n"
msgstr "无效条目。\n"
-#: src/namestore/gnunet-namestore.c:1213
+#: src/namestore/gnunet-namestore.c:1249
#, fuzzy, c-format
msgid "Invalid nick `%s'\n"
msgstr "无效条目。\n"
-#: src/namestore/gnunet-namestore.c:1255
-#, c-format
-msgid "Label `%s' contains `.' which is not allowed\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore.c:1304
+#: src/namestore/gnunet-namestore.c:1289
#, c-format
msgid "No default ego configured in identity service\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1367
+#: src/namestore/gnunet-namestore.c:1341
#, c-format
msgid "Superfluous command line arguments (starting with `%s') ignored\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1396
+#: src/namestore/gnunet-namestore.c:1357
#, fuzzy, c-format
msgid "Cannot connect to identity service\n"
msgstr "无法连接到 %s:%u:%s\n"
-#: src/namestore/gnunet-namestore.c:1443
+#: src/namestore/gnunet-namestore.c:1407
msgid "Empty record line argument is not allowed.\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1455
+#: src/namestore/gnunet-namestore.c:1423
#, c-format
msgid "Invalid expiration time `%s' (must be without unit)\n"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1467 src/namestore/gnunet-namestore.c:1483
-#: src/namestore/gnunet-namestore.c:1500
+#: src/namestore/gnunet-namestore.c:1435 src/namestore/gnunet-namestore.c:1453
+#: src/namestore/gnunet-namestore.c:1470
#, fuzzy, c-format
msgid "Missing entries in record line `%s'.\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/namestore/gnunet-namestore.c:1475
+#: src/namestore/gnunet-namestore.c:1444
#, fuzzy, c-format
msgid "Unknown record type `%s'\n"
msgstr "未知的命令“%s”。\n"
-#: src/namestore/gnunet-namestore.c:1513
+#: src/namestore/gnunet-namestore.c:1484
#, fuzzy, c-format
msgid "Invalid record data for type %s: `%s'.\n"
msgstr "IP 格式无效:“%s”\n"
-#: src/namestore/gnunet-namestore.c:1570
+#: src/namestore/gnunet-namestore.c:1548
msgid "add record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1573
+#: src/namestore/gnunet-namestore.c:1552
msgid "delete record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1577
+#: src/namestore/gnunet-namestore.c:1556
msgid "display records"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1584
+#: src/namestore/gnunet-namestore.c:1561
msgid ""
"expiration time for record to use (for adding only), \"never\" is possible"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1590
+#: src/namestore/gnunet-namestore.c:1566
#, fuzzy
msgid "set the desired nick name for the zone"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/namestore/gnunet-namestore.c:1595
+#: src/namestore/gnunet-namestore.c:1570
#, fuzzy
msgid "monitor changes in the namestore"
msgstr "初始化“%s”服务失败。\n"
-#: src/namestore/gnunet-namestore.c:1607
+#: src/namestore/gnunet-namestore.c:1580
#, fuzzy
msgid "determine our name for the given PKEY"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/namestore/gnunet-namestore.c:1614
+#: src/namestore/gnunet-namestore.c:1585
msgid ""
"set record set to values given by (possibly multiple) RECORDLINES; can be "
"specified multiple times"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1620
+#: src/namestore/gnunet-namestore.c:1590
msgid "type of the record to add/delete/display"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1625
+#: src/namestore/gnunet-namestore.c:1595
msgid "URI to import into our zone"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1631
+#: src/namestore/gnunet-namestore.c:1600
msgid "value of the record to add/delete"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1635
+#: src/namestore/gnunet-namestore.c:1604
msgid "create or list public record"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1641
+#: src/namestore/gnunet-namestore.c:1608
msgid ""
"create shadow record (only valid if all other records of the same type have "
"expired"
msgstr ""
-#: src/namestore/gnunet-namestore.c:1647
+#: src/namestore/gnunet-namestore.c:1613
msgid "name of the ego controlling the zone"
msgstr ""
-#: src/namestore/gnunet-namestore-fcfsd.c:549
-#, fuzzy, c-format
-msgid "Unsupported form value `%s'\n"
-msgstr "未知的命令“%s”。\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:576
-#, fuzzy, c-format
-msgid "Failed to create record for domain `%s': %s\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:597
-msgid "Error when mapping zone to name\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:629
-#, c-format
-msgid "Found existing name `%s' for the given key\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:689
-#, c-format
-msgid "Found %u existing records for domain `%s'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:777
-#, fuzzy, c-format
-msgid "Failed to create page for `%s'\n"
-msgstr "发送消息失败。\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:796
-#, fuzzy, c-format
-msgid "Failed to setup post processor for `%s'\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:832
-msgid "Domain name must not contain `.'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:841
-msgid "Domain name must not contain `+'\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1071
-msgid "No ego configured for `fcfsd` subsystem\n"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1099
-#, fuzzy
-msgid "Failed to start HTTP server\n"
-msgstr "初始化“%s”服务失败。\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1147
-#, fuzzy
-msgid "Failed to connect to identity\n"
-msgstr "初始化“%s”服务失败。\n"
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1173
-msgid "name of the zone that is to be managed by FCFSD"
-msgstr ""
-
-#: src/namestore/gnunet-namestore-fcfsd.c:1192
-msgid "GNU Name System First Come First Serve name registration service"
-msgstr ""
-
-#: src/namestore/gnunet-service-namestore.c:916
+#: src/namestore/gnunet-service-namestore.c:900
#, fuzzy, c-format
msgid "Failed to replicate block in namecache: %s\n"
msgstr "发送消息失败。\n"
-#: src/namestore/gnunet-zoneimport.c:1838
+#: src/namestore/gnunet-zoneimport.c:2038
msgid "size to use for the main hash map"
msgstr ""
-#: src/namestore/gnunet-zoneimport.c:1844
+#: src/namestore/gnunet-zoneimport.c:2043
msgid "minimum expiration time we assume for imported records"
msgstr ""
-#: src/namestore/namestore_api.c:376
+#: src/namestore/namestore_api.c:391
msgid "Namestore failed to store record\n"
msgstr ""
-#: src/namestore/plugin_namestore_flat.c:198
-#, c-format
-msgid "File too big to map: %llu bytes.\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:222
-#, c-format
-msgid "Namestore database file `%s' malformed\n"
-msgstr ""
-
-#: src/namestore/plugin_namestore_flat.c:790
+#: src/namestore/plugin_namestore_heap.c:778
#, fuzzy
-msgid "Flat file database running\n"
+msgid "heap file database running\n"
msgstr "sqlite 数据仓库"
-#: src/namestore/plugin_rest_namestore.c:919
-msgid "Namestore REST API initialized\n"
-msgstr ""
-
#: src/nat-auto/gnunet-nat-auto.c:193
#, fuzzy
msgid "Suggested configuration changes:\n"
msgstr "GNUnet 配置"
#: src/nat-auto/gnunet-nat-auto_legacy.c:403
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:680
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:681
#: src/nat-auto/nat_auto_api_test.c:409
msgid "Failed to connect to `gnunet-nat-server'\n"
msgstr ""
msgid "Detected external IP `%s'\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:571
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:572
msgid "This system has a global IPv6 address, setting IPv6 to supported.\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:589
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:590
#, fuzzy, c-format
msgid "Detected internal network address `%s'.\n"
msgstr "GNUnet 现在使用 IP 地址 %s。\n"
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:723
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
msgid "upnpc found, enabling its use\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:724
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:725
msgid "upnpc not found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:761
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:762
msgid "test_icmp_server not possible, as we have no public IPv4 address\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:773
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:833
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:774
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:834
msgid "test_icmp_server not possible, as we are not behind NAT\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:785
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:845
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:786
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:846
msgid "No working gnunet-helper-nat-server found\n"
msgstr ""
-#: src/nat-auto/gnunet-service-nat-auto_legacy.c:822
+#: src/nat-auto/gnunet-service-nat-auto_legacy.c:823
msgid "test_icmp_client not possible, as we have no internal IPv4 address\n"
msgstr ""
msgid "GNUnet NAT traversal autoconfigure daemon"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1332
+#: src/nat/gnunet-service-nat.c:1339
#, c-format
msgid "Malformed punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1342
+#: src/nat/gnunet-service-nat.c:1349
#, c-format
msgid "Invalid port number in punched hole specification `%s' (lacks port)\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1358
+#: src/nat/gnunet-service-nat.c:1365
#, c-format
msgid "Malformed punched hole specification `%s' (lacks `]')\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1369
+#: src/nat/gnunet-service-nat.c:1376
#, c-format
msgid "Malformed punched hole specification `%s' (IPv6 address invalid)"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1834
+#: src/nat/gnunet-service-nat.c:1841
msgid "Connection reversal request failed\n"
msgstr ""
-#: src/nat/gnunet-service-nat.c:1907
+#: src/nat/gnunet-service-nat.c:1914
msgid ""
"UPnP enabled in configuration, but UPnP client `upnpc` command not found, "
"disabling UPnP\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:191
+#: src/nat/gnunet-service-nat_helper.c:186
#, c-format
msgid "gnunet-helper-nat-server generated malformed address `%s'\n"
msgstr ""
-#: src/nat/gnunet-service-nat_helper.c:277
+#: src/nat/gnunet-service-nat_helper.c:273
#, fuzzy, c-format
msgid "Failed to start %s\n"
msgstr "运行 %s失败:%s %d\n"
msgid "`upnpc' command not found\n"
msgstr ""
-#: src/nse/gnunet-nse.c:123
-msgid "Show network size estimates from NSE service."
-msgstr ""
-
#: src/nse/gnunet-nse-profiler.c:849
msgid "limit to the number of connections to NSE services, 0 for none"
msgstr ""
msgid "Measure quality and performance of the NSE service."
msgstr "无法访问该服务"
-#: src/nse/gnunet-service-nse.c:1452
-#: src/revocation/gnunet-service-revocation.c:841 src/util/gnunet-scrypt.c:267
+#: src/nse/gnunet-nse.c:122
+msgid "Show network size estimates from NSE service."
+msgstr ""
+
+#: src/nse/gnunet-service-nse.c:1534
+#: src/revocation/gnunet-service-revocation.c:843 src/util/gnunet-scrypt.c:276
#, fuzzy
msgid "Value is too large.\n"
msgstr "值不在合法范围内。"
-#: src/peerinfo/gnunet-service-peerinfo.c:178
-#, c-format
-msgid "Removing expired address of transport `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:313
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s': %s\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:334
-#: src/peerinfo/gnunet-service-peerinfo.c:365
-#, fuzzy, c-format
-msgid "Failed to parse HELLO in file `%s'\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:449
-msgid "# peers known"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:492
-#, c-format
-msgid ""
-"File `%s' in directory `%s' does not match naming convention. Removed.\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:658
-#, fuzzy, c-format
-msgid "Scanning directory `%s'\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:666
-#, c-format
-msgid "Still no peers found in `%s'!\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1099
-#, fuzzy, c-format
-msgid "Cleaning up directory `%s'\n"
-msgstr "解析配置文件“%s”失败\n"
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1437
-#, c-format
-msgid "Importing HELLOs from `%s'\n"
-msgstr ""
-
-#: src/peerinfo/gnunet-service-peerinfo.c:1450
-msgid "Skipping import of included HELLOs\n"
-msgstr ""
-
-#: src/peerinfo/peerinfo_api.c:220
-msgid "Failed to receive response from `PEERINFO' service."
-msgstr ""
-
#: src/peerinfo-tool/gnunet-peerinfo.c:239
#, fuzzy, c-format
msgid "%sPeer `%s'\n"
msgstr ""
#: src/peerinfo-tool/gnunet-peerinfo.c:299
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:501
+#: src/rest-plugins/plugin_rest_peerinfo.c:501
#, fuzzy, c-format
msgid "Failure: Cannot convert address to string for peer `%s'\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
msgid "dump hello to file"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:873
-msgid "also output HELLO uri(s)"
-msgstr ""
+#: src/peerinfo-tool/gnunet-peerinfo.c:873
+msgid "also output HELLO uri(s)"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:879
+msgid "add given HELLO uri to the database"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo.c:897
+#, fuzzy
+msgid "Print information about peers."
+msgstr "无法获取有关用户“%s”的信息:%s\n"
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
+#: src/transport/gnunet-service-transport_plugins.c:168
+#, c-format
+msgid "Starting transport plugins `%s'\n"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
+#: src/transport/gnunet-service-transport_plugins.c:173
+#, c-format
+msgid "Loading `%s' transport plugin\n"
+msgstr ""
+
+#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
+#: src/transport/gnunet-service-transport_plugins.c:208
+#, fuzzy, c-format
+msgid "Failed to load transport plugin for `%s'\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:178
+#, c-format
+msgid "Removing expired address of transport `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:313
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s': %s\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:334
+#: src/peerinfo/gnunet-service-peerinfo.c:365
+#, fuzzy, c-format
+msgid "Failed to parse HELLO in file `%s'\n"
+msgstr "解析配置文件“%s”失败\n"
-#: src/peerinfo-tool/gnunet-peerinfo.c:879
-msgid "add given HELLO uri to the database"
+#: src/peerinfo/gnunet-service-peerinfo.c:449
+msgid "# peers known"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo.c:897
-#, fuzzy
-msgid "Print information about peers."
-msgstr "无法获取有关用户“%s”的信息:%s\n"
-
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:105
-#: src/transport/gnunet-service-transport_plugins.c:168
+#: src/peerinfo/gnunet-service-peerinfo.c:492
#, c-format
-msgid "Starting transport plugins `%s'\n"
+msgid ""
+"File `%s' in directory `%s' does not match naming convention. Removed.\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:109
-#: src/transport/gnunet-service-transport_plugins.c:173
+#: src/peerinfo/gnunet-service-peerinfo.c:659
+#, fuzzy, c-format
+msgid "Scanning directory `%s'\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/peerinfo/gnunet-service-peerinfo.c:667
#, c-format
-msgid "Loading `%s' transport plugin\n"
+msgid "Still no peers found in `%s'!\n"
msgstr ""
-#: src/peerinfo-tool/gnunet-peerinfo_plugins.c:129
-#: src/transport/gnunet-service-transport_plugins.c:208
+#: src/peerinfo/gnunet-service-peerinfo.c:1100
#, fuzzy, c-format
-msgid "Failed to load transport plugin for `%s'\n"
+msgid "Cleaning up directory `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/peerinfo-tool/plugin_rest_peerinfo.c:796
-msgid "Peerinfo REST API initialized\n"
+#: src/peerinfo/gnunet-service-peerinfo.c:1438
+#, c-format
+msgid "Importing HELLOs from `%s'\n"
+msgstr ""
+
+#: src/peerinfo/gnunet-service-peerinfo.c:1451
+msgid "Skipping import of included HELLOs\n"
+msgstr ""
+
+#: src/peerinfo/peerinfo_api.c:220
+msgid "Failed to receive response from `PEERINFO' service."
msgstr ""
#: src/peerstore/gnunet-peerstore.c:91
msgid "peerstore"
msgstr ""
-#: src/peerstore/gnunet-service-peerstore.c:561
+#: src/peerstore/gnunet-service-peerstore.c:598
#, fuzzy, c-format
msgid "Could not load database backend `%s'\n"
msgstr "无法解析“%s”(%s):%s\n"
-#: src/peerstore/peerstore_api.c:595 src/peerstore/peerstore_api.c:643
+#: src/peerstore/peerstore_api.c:532 src/peerstore/peerstore_api.c:581
#, fuzzy
msgid "Unexpected iteration response, this should not happen.\n"
msgstr "输出格式未知,不应出现这种情况。\n"
-#: src/peerstore/peerstore_api.c:657
+#: src/peerstore/peerstore_api.c:595
#, fuzzy
msgid "Received a malformed response from service."
msgstr "“%s”的参数无效。\n"
-#: src/peerstore/peerstore_api.c:782
+#: src/peerstore/peerstore_api.c:731
msgid "Received a watch result for a non existing watch.\n"
msgstr ""
#: src/peerstore/plugin_peerstore_sqlite.c:453
+#: src/psycstore/plugin_psycstore_sqlite.c:282
#, fuzzy, c-format
msgid ""
"Error executing SQL query: %s\n"
msgstr "创建用户出错"
#: src/peerstore/plugin_peerstore_sqlite.c:488
+#: src/psycstore/plugin_psycstore_mysql.c:250
+#: src/psycstore/plugin_psycstore_sqlite.c:259
#, fuzzy, c-format
msgid ""
"Error preparing SQL query: %s\n"
msgid "PQprepare (`%s' as `%s') failed with error: %s\n"
msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
+#: src/psycstore/gnunet-service-psycstore.c:249
+#, fuzzy
+msgid "Failed to store membership information!\n"
+msgstr "打开日志文件“%s”失败:%s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:271
+#, fuzzy
+msgid "Failed to test membership!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:300
+#, fuzzy
+msgid "Dropping invalid fragment\n"
+msgstr "“%s”的参数无效。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:311
+#, fuzzy
+msgid "Failed to store fragment\n"
+msgstr "运行 %s失败:%s %d\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:368
+#, fuzzy
+msgid "Failed to get fragment!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:434
+#, fuzzy
+msgid "Failed to get message!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:464
+#, fuzzy
+msgid "Failed to get message fragment!\n"
+msgstr "打开日志文件“%s”失败:%s\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:494
+#, fuzzy
+msgid "Failed to get master counters!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:675
+#, fuzzy, c-format
+msgid "Failed to begin modifying state: %d\n"
+msgstr "运行 %s失败:%s %d\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:685
+#, fuzzy, c-format
+msgid "Failed to modify state: %d\n"
+msgstr "运行 %s失败:%s %d\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:693
+#, fuzzy
+msgid "Failed to end modifying state!\n"
+msgstr "运行 %s失败:%s %d\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:730
+#, fuzzy
+msgid "Tried to set invalid state variable name!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:744
+#, fuzzy
+msgid "Failed to begin synchronizing state!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:761
+#, fuzzy
+msgid "Failed to end synchronizing state!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:779
+#: src/psycstore/gnunet-service-psycstore.c:795
+#, fuzzy
+msgid "Failed to reset state!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:824
+#: src/psycstore/gnunet-service-psycstore.c:881
+#, fuzzy
+msgid "Tried to get invalid state variable name!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/gnunet-service-psycstore.c:851
+#: src/psycstore/gnunet-service-psycstore.c:896
+#, fuzzy
+msgid "Failed to get state variable!\n"
+msgstr "发送消息失败。\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:281
+#, fuzzy
+msgid "Unable to initialize Mysql.\n"
+msgstr "无法初始化 SQLite:%s。\n"
+
+#: src/psycstore/plugin_psycstore_mysql.c:291
+#, fuzzy, c-format
+msgid "Failed to run SQL statement `%s'\n"
+msgstr "解析配置文件“%s”失败\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:61
+#, fuzzy, c-format
+msgid "`%s' failed at %s:%d with error: %s (%d)\n"
+msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
+
+#: src/psycstore/plugin_psycstore_sqlite.c:1924
+#, fuzzy
+msgid "SQLite database running\n"
+msgstr "sqlite 数据仓库"
+
#: src/pt/gnunet-daemon-pt.c:423
msgid "Failed to pack DNS request. Dropping.\n"
msgstr ""
msgid "# DNS replies dropped (too late?)"
msgstr ""
-#: src/pt/gnunet-daemon-pt.c:1217 src/pt/gnunet-daemon-pt.c:1226
-#: src/pt/gnunet-daemon-pt.c:1242 src/pt/gnunet-daemon-pt.c:1251
-#: src/pt/gnunet-daemon-pt.c:1260
+#: src/pt/gnunet-daemon-pt.c:1219 src/pt/gnunet-daemon-pt.c:1228
+#: src/pt/gnunet-daemon-pt.c:1244 src/pt/gnunet-daemon-pt.c:1253
+#: src/pt/gnunet-daemon-pt.c:1262
#, fuzzy, c-format
msgid "Failed to connect to %s service. Exiting.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/pt/gnunet-daemon-pt.c:1305
+#: src/pt/gnunet-daemon-pt.c:1307
msgid "Daemon to run to perform IP protocol translation to GNUnet"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:600
+#: src/reclaim/gnunet-reclaim.c:467
#, fuzzy, c-format
msgid "Ego is required\n"
msgstr "%s:选项“%s”有歧义\n"
-#: src/reclaim/gnunet-reclaim.c:607
+#: src/reclaim/gnunet-reclaim.c:475
#, c-format
msgid "Attribute value missing!\n"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:614
+#: src/reclaim/gnunet-reclaim.c:483
#, fuzzy, c-format
msgid "Requesting party key is required!\n"
msgstr "设置要使用的昵称(必须)"
-#: src/reclaim/gnunet-reclaim.c:633
-msgid "Add an attribute NAME"
+#: src/reclaim/gnunet-reclaim.c:506
+msgid "Add attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:638
-msgid "Delete the attribute with ID"
+#: src/reclaim/gnunet-reclaim.c:512
+msgid "Attribute value"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:643
-msgid "The attribute VALUE"
+#: src/reclaim/gnunet-reclaim.c:517
+msgid "Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:648
-#, fuzzy
-msgid "The EGO to use"
-msgstr "消息尺寸"
-
-#: src/reclaim/gnunet-reclaim.c:654
-msgid "Specify the relying party for issue"
+#: src/reclaim/gnunet-reclaim.c:522
+msgid "Audience (relying party)"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:658
-msgid "List attributes for EGO"
+#: src/reclaim/gnunet-reclaim.c:526
+msgid "List attributes for Ego"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:665
-msgid "Issue a ticket for a set of attributes separated by comma"
+#: src/reclaim/gnunet-reclaim.c:531
+msgid "Issue a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:670
+#: src/reclaim/gnunet-reclaim.c:536
msgid "Consume a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:675
+#: src/reclaim/gnunet-reclaim.c:541
msgid "Revoke a ticket"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:680
+#: src/reclaim/gnunet-reclaim.c:546
msgid "Type of attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:684
-msgid "List tickets of ego"
-msgstr ""
-
-#: src/reclaim/gnunet-reclaim.c:690
+#: src/reclaim/gnunet-reclaim.c:551
msgid "Expiration interval of the attribute"
msgstr ""
-#: src/reclaim/gnunet-reclaim.c:697
-msgid "re:claimID command line tool"
-msgstr ""
-
-#: src/reclaim/plugin_rest_openid_connect.c:2121
-msgid "OpenID Connect REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/plugin_rest_reclaim.c:1098
-msgid "Identity Provider REST API initialized\n"
-msgstr ""
-
-#: src/reclaim/reclaim_api.c:437
+#: src/reclaim/reclaim_api.c:436
#, fuzzy
msgid "failed to store record\n"
msgstr "运行 %s失败:%s %d\n"
msgid "Search string `%s' is too long!\n"
msgstr "服务已删除。\n"
-#: src/rest/gnunet-rest-server.c:1039
-#, fuzzy
-msgid "GNUnet REST server"
-msgstr "GNUnet 错误日志"
+#: src/rest-plugins/plugin_rest_copying.c:209
+msgid "COPYING REST API initialized\n"
+msgstr ""
-#: src/rest/plugin_rest_config.c:265
-msgid "CONFIG REST API initialized\n"
+#: src/rest-plugins/plugin_rest_credential.c:1128
+msgid "GNS REST API initialized\n"
msgstr ""
-#: src/rest/plugin_rest_copying.c:209
-msgid "COPYING REST API initialized\n"
+#: src/rest-plugins/plugin_rest_gns.c:452
+msgid "Gns REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_identity.c:1297
+msgid "Identity REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_namestore.c:1079
+msgid "Namestore REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_openid_connect.c:2245
+#: src/rest-plugins/plugin_rest_reclaim.c:1079
+msgid "Identity Provider REST API initialized\n"
+msgstr ""
+
+#: src/rest-plugins/plugin_rest_peerinfo.c:796
+msgid "Peerinfo REST API initialized\n"
+msgstr ""
+
+#: src/rest/gnunet-rest-server.c:927
+msgid "listen on specified port (default: 7776)"
msgstr ""
+#: src/rest/gnunet-rest-server.c:944
+#, fuzzy
+msgid "GNUnet REST server"
+msgstr "GNUnet 错误日志"
+
#: src/revocation/gnunet-revocation.c:129
#, c-format
msgid "Key `%s' is valid\n"
msgid "Ego `%s' not found.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:372
+#: src/revocation/gnunet-revocation.c:373
#, c-format
msgid "Error: revocation certificate in `%s' is not for `%s'\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:392
+#: src/revocation/gnunet-revocation.c:393
msgid "Revocation certificate ready\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:402
+#: src/revocation/gnunet-revocation.c:403
msgid "Revocation certificate not ready, calculating proof of work\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:436
+#: src/revocation/gnunet-revocation.c:437 src/social/gnunet-social.c:1180
#, fuzzy, c-format
msgid "Public key `%s' malformed\n"
msgstr "“%s”的参数无效。\n"
-#: src/revocation/gnunet-revocation.c:449
+#: src/revocation/gnunet-revocation.c:450
msgid ""
"Testing and revoking at the same time is not allowed, only executing test.\n"
msgstr ""
-#: src/revocation/gnunet-revocation.c:469
+#: src/revocation/gnunet-revocation.c:470
#, fuzzy
msgid "No filename to store revocation certificate given.\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/revocation/gnunet-revocation.c:490
+#: src/revocation/gnunet-revocation.c:491
#, fuzzy, c-format
msgid "Failed to read revocation certificate from `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/revocation/gnunet-revocation.c:515
+#: src/revocation/gnunet-revocation.c:516
#, fuzzy
msgid "No action specified. Nothing to do.\n"
msgstr "没有指定接口,将使用默认。\n"
-#: src/revocation/gnunet-revocation.c:534
+#: src/revocation/gnunet-revocation.c:535
msgid "use NAME for the name of the revocation file"
msgstr ""
-#: src/revocation/gnunet-revocation.c:540
+#: src/revocation/gnunet-revocation.c:541
msgid ""
"revoke the private key associated for the the private key associated with "
"the ego NAME "
msgstr ""
-#: src/revocation/gnunet-revocation.c:545
+#: src/revocation/gnunet-revocation.c:546
msgid "actually perform revocation, otherwise we just do the precomputation"
msgstr ""
-#: src/revocation/gnunet-revocation.c:551
+#: src/revocation/gnunet-revocation.c:552
msgid "test if the public key KEY has been revoked"
msgstr ""
msgid "SET service crashed, terminating revocation service\n"
msgstr ""
-#: src/revocation/gnunet-service-revocation.c:865
+#: src/revocation/gnunet-service-revocation.c:867
#, fuzzy
msgid "Could not open revocation database file!"
msgstr "无法连接到 %s:%u:%s\n"
-#: src/rps/gnunet-rps.c:260
-msgid "Seed a PeerID"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:264
-msgid "Get updates of view (0 for infinite updates)"
-msgstr ""
-
-#: src/rps/gnunet-rps.c:268
-msgid "Get peers from biased stream"
-msgstr ""
-
-#: src/rps/gnunet-rps-profiler.c:3086
+#: src/rps/gnunet-rps-profiler.c:2959
msgid "duration of the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3091
+#: src/rps/gnunet-rps-profiler.c:2965
msgid "timeout for the profiling"
msgstr ""
-#: src/rps/gnunet-rps-profiler.c:3096
+#: src/rps/gnunet-rps-profiler.c:2971
#, fuzzy
msgid "number of PeerIDs to request"
msgstr "迭代次数"
-#: src/rps/gnunet-rps-profiler.c:3112
+#: src/rps/gnunet-rps-profiler.c:2986
#, fuzzy
msgid "Measure quality and performance of the RPS service."
msgstr "无法访问该服务"
+#: src/rps/gnunet-rps.c:260
+msgid "Seed a PeerID"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:264
+msgid "Get updates of view (0 for infinite updates)"
+msgstr ""
+
+#: src/rps/gnunet-rps.c:268
+msgid "Get peers from biased stream"
+msgstr ""
+
#: src/scalarproduct/gnunet-scalarproduct.c:220
#, fuzzy
msgid "You must specify at least one message ID to check!\n"
msgid "Calculate the Vectorproduct with a GNUnet peer."
msgstr ""
-#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1359
-#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
-#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1124
+#: src/scalarproduct/gnunet-service-scalarproduct-ecc_alice.c:1172
#: src/scalarproduct/gnunet-service-scalarproduct-ecc_bob.c:1063
+#: src/scalarproduct/gnunet-service-scalarproduct_alice.c:1401
+#: src/scalarproduct/gnunet-service-scalarproduct_bob.c:1345
#, fuzzy
msgid "Connect to CADET failed\n"
msgstr "“%s”已连接到“%s”。\n"
msgid "also profile decryption"
msgstr ""
-#: src/set/gnunet-service-set.c:1911
+#: src/set/gnunet-service-set.c:2005
#, fuzzy
msgid "Could not connect to CADET service\n"
msgstr "无法连接到 %s:%u:%s\n"
-#: src/set/gnunet-set-ibf-profiler.c:267
+#: src/set/gnunet-set-ibf-profiler.c:252
#, fuzzy
msgid "number of element in set A-B"
msgstr "迭代次数"
-#: src/set/gnunet-set-ibf-profiler.c:273
+#: src/set/gnunet-set-ibf-profiler.c:258
#, fuzzy
msgid "number of element in set B-A"
msgstr "迭代次数"
-#: src/set/gnunet-set-ibf-profiler.c:280
+#: src/set/gnunet-set-ibf-profiler.c:264
msgid "number of common elements in A and B"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:286
+#: src/set/gnunet-set-ibf-profiler.c:270
msgid "hash num"
msgstr ""
-#: src/set/gnunet-set-ibf-profiler.c:292
+#: src/set/gnunet-set-ibf-profiler.c:276
msgid "ibf size"
msgstr ""
msgid "element size"
msgstr ""
+#: src/social/gnunet-social.c:1166
+#, fuzzy
+msgid "--place missing or invalid.\n"
+msgstr "“%s”的参数无效。\n"
+
+#: src/social/gnunet-social.c:1217
+msgid "assign --name in state to --data"
+msgstr ""
+
+#: src/social/gnunet-social.c:1222
+msgid "say good-bye and leave somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1227
+msgid "create a place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1232
+msgid "destroy a place we were hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1237
+msgid "enter somebody else's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1243
+msgid "find state matching name prefix"
+msgstr ""
+
+#: src/social/gnunet-social.c:1248
+msgid "replay history of messages up to the given --limit"
+msgstr ""
+
+#: src/social/gnunet-social.c:1253
+msgid "reconnect to a previously created place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1258
+msgid "publish something to a place we are hosting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1263
+msgid "reconnect to a previously entered place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1268
+msgid "search for state matching exact name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1273
+msgid "submit something to somebody's place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1278
+msgid "list of egos and subscribed places"
+msgstr ""
+
+#: src/social/gnunet-social.c:1283
+msgid "extract and replay history between message IDs --start and --until"
+msgstr ""
+
+#: src/social/gnunet-social.c:1292
+msgid "application ID to use when connecting"
+msgstr ""
+
+#: src/social/gnunet-social.c:1298
+msgid "message body or state value"
+msgstr ""
+
+#: src/social/gnunet-social.c:1304
+#, fuzzy
+msgid "name or public key of ego"
+msgstr "“%s”的参数无效。\n"
+
+#: src/social/gnunet-social.c:1309
+#, fuzzy
+msgid "wait for incoming messages"
+msgstr "发送消息失败。\n"
+
+#: src/social/gnunet-social.c:1315
+msgid "GNS name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1321
+msgid "peer ID for --guest-enter"
+msgstr ""
+
+#: src/social/gnunet-social.c:1327
+msgid "name (key) to query from state"
+msgstr ""
+
+#: src/social/gnunet-social.c:1333
+msgid "method name"
+msgstr ""
+
+#: src/social/gnunet-social.c:1339
+#, fuzzy
+msgid "number of messages to replay from history"
+msgstr "每次迭代所使用的消息数量"
+
+#: src/social/gnunet-social.c:1345
+msgid "key address of place"
+msgstr ""
+
+#: src/social/gnunet-social.c:1351
+msgid "start message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1356
+msgid "respond to entry requests by admitting all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1362
+msgid "end message ID for history replay"
+msgstr ""
+
+#: src/social/gnunet-social.c:1367
+msgid "respond to entry requests by refusing all guests"
+msgstr ""
+
+#: src/social/gnunet-social.c:1377
+msgid ""
+"gnunet-social - Interact with the social service: enter/leave, send/receive "
+"messages, access history and state.\n"
+msgstr ""
+
#: src/sq/sq.c:54
#, c-format
msgid "Failure to bind %u-th SQL parameter\n"
msgid "Loading %llu bytes of statistics from `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:404
-#: src/statistics/gnunet-statistics.c:442
+#: src/statistics/gnunet-statistics.c:409
+#: src/statistics/gnunet-statistics.c:450
#, fuzzy
msgid "Failed to obtain statistics.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/statistics/gnunet-statistics.c:407
-#: src/statistics/gnunet-statistics.c:445
+#: src/statistics/gnunet-statistics.c:412
+#: src/statistics/gnunet-statistics.c:453
#, fuzzy, c-format
msgid "Failed to obtain statistics from host `%s:%llu'\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/statistics/gnunet-statistics.c:518
+#: src/statistics/gnunet-statistics.c:528
msgid "Missing argument: subsystem \n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:524
+#: src/statistics/gnunet-statistics.c:536
msgid "Missing argument: name\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:563
+#: src/statistics/gnunet-statistics.c:579
#, c-format
msgid "No subsystem or name given\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:575
+#: src/statistics/gnunet-statistics.c:594
#, fuzzy, c-format
msgid "Failed to initialize watch routine\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/statistics/gnunet-statistics.c:698
+#: src/statistics/gnunet-statistics.c:729
#, fuzzy, c-format
msgid "Invalid argument `%s'\n"
msgstr "“%s”的参数无效。\n"
-#: src/statistics/gnunet-statistics.c:714
+#: src/statistics/gnunet-statistics.c:747
#, fuzzy, c-format
msgid "A port is required to connect to host `%s'\n"
msgstr "无法连接到 %s:%u:%s\n"
-#: src/statistics/gnunet-statistics.c:723
+#: src/statistics/gnunet-statistics.c:755
#, c-format
msgid "A port has to be between 1 and 65535 to connect to host `%s'\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:752
+#: src/statistics/gnunet-statistics.c:786
#, c-format
msgid "Not able to watch testbed nodes (yet - feel free to implement)\n"
msgstr ""
-#: src/statistics/gnunet-statistics.c:785
+#: src/statistics/gnunet-statistics.c:819
msgid "limit output to statistics for the given NAME"
msgstr ""
-#: src/statistics/gnunet-statistics.c:791
+#: src/statistics/gnunet-statistics.c:824
msgid "make the value being set persistent"
msgstr ""
-#: src/statistics/gnunet-statistics.c:798
+#: src/statistics/gnunet-statistics.c:830
msgid "limit output to the given SUBSYSTEM"
msgstr ""
-#: src/statistics/gnunet-statistics.c:804
+#: src/statistics/gnunet-statistics.c:836
msgid "use as csv separator"
msgstr ""
-#: src/statistics/gnunet-statistics.c:811
+#: src/statistics/gnunet-statistics.c:842
msgid "path to the folder containing the testbed data"
msgstr ""
-#: src/statistics/gnunet-statistics.c:817
+#: src/statistics/gnunet-statistics.c:847
msgid "just print the statistics value"
msgstr ""
-#: src/statistics/gnunet-statistics.c:822
+#: src/statistics/gnunet-statistics.c:852
msgid "watch value continuously"
msgstr ""
-#: src/statistics/gnunet-statistics.c:828
+#: src/statistics/gnunet-statistics.c:858
msgid "connect to remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:834
+#: src/statistics/gnunet-statistics.c:864
msgid "port for remote host"
msgstr ""
-#: src/statistics/gnunet-statistics.c:848
+#: src/statistics/gnunet-statistics.c:881
msgid "Print statistics about GNUnet operations."
msgstr ""
msgstr "“%s”的参数无效。\n"
#: src/testbed/generate-underlay-topology.c:342
-#: src/testbed/gnunet-testbed-profiler.c:282
+#: src/testbed/gnunet-testbed-profiler.c:283
msgid "create COUNT number of peers"
msgstr ""
msgstr ""
#: src/testbed/gnunet-daemon-testbed-underlay.c:233 src/testing/list-keys.c:46
-#: src/testing/testing.c:288 src/util/gnunet-ecc.c:311
+#: src/testing/testing.c:288 src/util/gnunet-ecc.c:312
#, c-format
msgid "Incorrect hostkey file format: %s\n"
msgstr ""
msgid "%.s Unknown result code."
msgstr ""
-#: src/testbed/gnunet_testbed_mpi_spawn.c:118
-msgid "Waiting for child to exit.\n"
-msgstr ""
-
-#: src/testbed/gnunet_testbed_mpi_spawn.c:241
-#, fuzzy, c-format
-msgid "Spawning process `%s'\n"
-msgstr "卸载 GNUnet 服务"
-
-#: src/testbed/gnunet-testbed-profiler.c:287
+#: src/testbed/gnunet-testbed-profiler.c:289
msgid "tolerate COUNT number of continious timeout failures"
msgstr ""
-#: src/testbed/gnunet-testbed-profiler.c:291
+#: src/testbed/gnunet-testbed-profiler.c:294
msgid ""
"run profiler in non-interactive mode where upon testbed setup the profiler "
"does not wait for a keystroke but continues to run until a termination "
"signal is received"
msgstr ""
-#: src/testbed/testbed_api.c:400
+#: src/testbed/gnunet_testbed_mpi_spawn.c:118
+msgid "Waiting for child to exit.\n"
+msgstr ""
+
+#: src/testbed/gnunet_testbed_mpi_spawn.c:241
+#, fuzzy, c-format
+msgid "Spawning process `%s'\n"
+msgstr "卸载 GNUnet 服务"
+
+#: src/testbed/testbed_api.c:410
#, fuzzy, c-format
msgid "Adding host %u failed with error: %s\n"
msgstr "“%s”以错误码 %d 失败:%s\n"
msgid "Hosts file %s cannot be read\n"
msgstr ""
-#: src/testbed/testbed_api_hosts.c:571
+#: src/testbed/testbed_api_hosts.c:569
#, c-format
msgid "The function %s is only available when compiled with (--with-ll)\n"
msgstr ""
msgid "Key number %u does not exist\n"
msgstr ""
-#: src/testing/testing.c:1161
+#: src/testing/testing.c:1159
#, c-format
msgid ""
"You attempted to create a testbed with more than %u hosts. Please "
"precompute more hostkeys first.\n"
msgstr ""
-#: src/testing/testing.c:1170
+#: src/testing/testing.c:1168
#, fuzzy, c-format
msgid "Failed to initialize hostkey for peer %u\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/testing/testing.c:1180
+#: src/testing/testing.c:1178
msgid "PRIVATE_KEY option in PEER section missing in configuration\n"
msgstr ""
-#: src/testing/testing.c:1193
+#: src/testing/testing.c:1191
#, fuzzy
msgid "Failed to create configuration for peer (not enough free ports?)\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/testing/testing.c:1207
+#: src/testing/testing.c:1205
#, fuzzy, c-format
msgid "Cannot open hostkey file `%s': %s\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/testing/testing.c:1219
+#: src/testing/testing.c:1217
#, fuzzy, c-format
msgid "Failed to write hostkey file for peer %u: %s\n"
msgstr "发送消息失败。\n"
-#: src/testing/testing.c:1244
+#: src/testing/testing.c:1242
#, fuzzy, c-format
msgid "Failed to write configuration file `%s' for peer %u: %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/testing/testing.c:1346
+#: src/testing/testing.c:1344
#, fuzzy, c-format
msgid "Failed to start `%s': %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/testing/testing.c:1649
+#: src/testing/testing.c:1647
#, fuzzy, c-format
msgid "Failed to load configuration from %s\n"
msgstr "解析配置文件“%s”失败\n"
msgid "Directory for file `%s' does not seem to be writable.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:228
+#: src/topology/gnunet-daemon-topology.c:230
msgid "# peers blacklisted"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:334
+#: src/topology/gnunet-daemon-topology.c:344
msgid "# connect requests issued to ATS"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:513
+#: src/topology/gnunet-daemon-topology.c:538
msgid "# HELLO messages gossipped"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:600
-#: src/topology/gnunet-daemon-topology.c:680
+#: src/topology/gnunet-daemon-topology.c:640
+#: src/topology/gnunet-daemon-topology.c:726
msgid "# friends connected"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:851
+#: src/topology/gnunet-daemon-topology.c:923
msgid "Failed to connect to core service, can not manage topology!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:877
+#: src/topology/gnunet-daemon-topology.c:956
#, c-format
msgid "Found myself `%s' in friend list (useless, ignored)\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:884
+#: src/topology/gnunet-daemon-topology.c:963
#, fuzzy, c-format
msgid "Found friend `%s' in configuration\n"
msgstr ""
"\n"
"结束配置。\n"
-#: src/topology/gnunet-daemon-topology.c:902
+#: src/topology/gnunet-daemon-topology.c:985
msgid "Encountered errors parsing friends list!\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:905
+#: src/topology/gnunet-daemon-topology.c:988
#, fuzzy
msgid "# friends in configuration"
msgstr ""
"\n"
"结束配置。\n"
-#: src/topology/gnunet-daemon-topology.c:913
+#: src/topology/gnunet-daemon-topology.c:995
msgid ""
"Fewer friends specified than required by minimum friend count. Will only "
"connect to friends.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:921
+#: src/topology/gnunet-daemon-topology.c:1001
msgid ""
"More friendly connections required than target total number of connections.\n"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:968
+#: src/topology/gnunet-daemon-topology.c:1054
#: src/transport/plugin_transport_wlan.c:1517
msgid "# HELLO messages received"
msgstr ""
-#: src/topology/gnunet-daemon-topology.c:1128
+#: src/topology/gnunet-daemon-topology.c:1233
msgid "GNUnet topology control"
msgstr ""
-#: src/transport/gnunet-communicator-tcp.c:2154
-#: src/transport/gnunet-communicator-udp.c:2678
-#: src/transport/gnunet-service-tng.c:10043
-#: src/transport/gnunet-service-transport.c:2621
+#: src/transport/gnunet-communicator-tcp.c:2329
+#: src/transport/gnunet-communicator-udp.c:2883
+#: src/transport/gnunet-service-tng.c:4679
+#: src/transport/gnunet-service-transport.c:2782
#, fuzzy
msgid "Transport service is lacking key configuration settings. Exiting.\n"
msgstr "立即保存配置?"
-#: src/transport/gnunet-communicator-tcp.c:2211
+#: src/transport/gnunet-communicator-tcp.c:2393
msgid "GNUnet TCP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-udp.c:2749
+#: src/transport/gnunet-communicator-udp.c:2954
msgid "GNUnet UDP communicator"
msgstr ""
-#: src/transport/gnunet-communicator-unix.c:763
+#: src/transport/gnunet-communicator-unix.c:802
#, fuzzy
msgid ""
"Maximum number of UNIX connections exceeded, dropping incoming message\n"
msgstr "增加 TCP/IP 的最大连接数"
-#: src/transport/gnunet-communicator-unix.c:1017
+#: src/transport/gnunet-communicator-unix.c:1073
#: src/transport/plugin_transport_unix.c:1403
#, fuzzy, c-format
msgid "Cannot create path to `%s'\n"
msgstr "发送消息失败。\n"
-#: src/transport/gnunet-communicator-unix.c:1094
+#: src/transport/gnunet-communicator-unix.c:1162
msgid "GNUnet UNIX domain socket communicator"
msgstr ""
-#: src/transport/gnunet-service-transport_ats.c:141
-msgid "# Addresses given to ATS"
-msgstr ""
-
-#: src/transport/gnunet-service-transport.c:452
+#: src/transport/gnunet-service-transport.c:448
msgid "# messages dropped due to slow client"
msgstr ""
-#: src/transport/gnunet-service-transport.c:794
+#: src/transport/gnunet-service-transport.c:817
msgid "# bytes payload dropped (other peer was not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1477
+#: src/transport/gnunet-service-transport.c:1550
msgid "# bytes payload discarded due to not connected peer"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1622
+#: src/transport/gnunet-service-transport.c:1710
msgid "# bytes total received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:1701
+#: src/transport/gnunet-service-transport.c:1807
msgid "# bytes payload received"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2005
-#: src/transport/gnunet-service-transport.c:2446
+#: src/transport/gnunet-service-transport.c:2124
+#: src/transport/gnunet-service-transport.c:2596
msgid "# disconnects due to blacklist"
msgstr ""
-#: src/transport/gnunet-service-transport.c:2450
+#: src/transport/gnunet-service-transport.c:2600
#, fuzzy, c-format
msgid "Disallowing connection to peer `%s' on transport %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/gnunet-service-transport.c:2545
+#: src/transport/gnunet-service-transport.c:2708
#, fuzzy, c-format
msgid "Adding blacklisting entry for peer `%s'\n"
msgstr "卸载 GNUnet 服务"
-#: src/transport/gnunet-service-transport.c:2554
+#: src/transport/gnunet-service-transport.c:2717
#, c-format
msgid "Adding blacklisting entry for peer `%s':`%s'\n"
msgstr ""
+#: src/transport/gnunet-service-transport_ats.c:141
+msgid "# Addresses given to ATS"
+msgstr ""
+
#: src/transport/gnunet-service-transport_hello.c:195
msgid "# refreshed my HELLO"
msgstr ""
msgid "# session creation failed"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1053
+#: src/transport/gnunet-service-transport_neighbours.c:1052
msgid "# DISCONNECT messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1176
+#: src/transport/gnunet-service-transport_neighbours.c:1175
msgid "# disconnects due to quota of 0"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1324
-#: src/transport/gnunet-service-transport_neighbours.c:1785
+#: src/transport/gnunet-service-transport_neighbours.c:1323
+#: src/transport/gnunet-service-transport_neighbours.c:1784
msgid "# bytes in message queue for other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1329
+#: src/transport/gnunet-service-transport_neighbours.c:1328
msgid "# messages transmitted to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1335
+#: src/transport/gnunet-service-transport_neighbours.c:1334
msgid "# transmission failures for messages to other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1395
+#: src/transport/gnunet-service-transport_neighbours.c:1394
msgid "# messages timed out while in transport queue"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1479
+#: src/transport/gnunet-service-transport_neighbours.c:1478
msgid "# KEEPALIVES sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1515
+#: src/transport/gnunet-service-transport_neighbours.c:1514
msgid "# KEEPALIVE messages discarded (peer unknown)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1523
+#: src/transport/gnunet-service-transport_neighbours.c:1522
msgid "# KEEPALIVE messages discarded (no session)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1533
+#: src/transport/gnunet-service-transport_neighbours.c:1532
msgid "# KEEPALIVES received in good order"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1578
+#: src/transport/gnunet-service-transport_neighbours.c:1577
msgid "# KEEPALIVE_RESPONSEs discarded (not connected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1587
+#: src/transport/gnunet-service-transport_neighbours.c:1586
msgid "# KEEPALIVE_RESPONSEs discarded (not expected)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1595
+#: src/transport/gnunet-service-transport_neighbours.c:1594
msgid "# KEEPALIVE_RESPONSEs discarded (address changed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1604
+#: src/transport/gnunet-service-transport_neighbours.c:1603
msgid "# KEEPALIVE_RESPONSEs discarded (no nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1609
+#: src/transport/gnunet-service-transport_neighbours.c:1608
msgid "# KEEPALIVE_RESPONSEs discarded (bad nonce)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1615
+#: src/transport/gnunet-service-transport_neighbours.c:1614
msgid "# KEEPALIVE_RESPONSEs received (OK)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1682
+#: src/transport/gnunet-service-transport_neighbours.c:1681
msgid "# messages discarded due to lack of neighbour record"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1716
+#: src/transport/gnunet-service-transport_neighbours.c:1715
msgid "# bandwidth quota violations by other peers"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1731
+#: src/transport/gnunet-service-transport_neighbours.c:1730
msgid "# ms throttling suggested"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:1854
+#: src/transport/gnunet-service-transport_neighbours.c:1853
#, fuzzy, c-format
msgid "Failed to send SYN message to peer `%s'\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1874
+#: src/transport/gnunet-service-transport_neighbours.c:1873
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN CONT)"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1913
+#: src/transport/gnunet-service-transport_neighbours.c:1912
#, fuzzy
msgid "# SYN messages sent"
msgstr "消息尺寸"
-#: src/transport/gnunet-service-transport_neighbours.c:1930
+#: src/transport/gnunet-service-transport_neighbours.c:1929
#, fuzzy, c-format
msgid "Failed to transmit SYN message to %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/gnunet-service-transport_neighbours.c:1960
+#: src/transport/gnunet-service-transport_neighbours.c:1959
#, fuzzy
msgid "# Failed attempts to switch addresses (failed to send SYN)"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2028
+#: src/transport/gnunet-service-transport_neighbours.c:2027
#, fuzzy, c-format
msgid "Failed to send SYN_ACK message to peer `%s' using address `%s'\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2082
+#: src/transport/gnunet-service-transport_neighbours.c:2081
msgid "# SYN_ACK messages sent"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2099
+#: src/transport/gnunet-service-transport_neighbours.c:2098
#, fuzzy, c-format
msgid "Failed to transmit SYN_ACK message to %s\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/gnunet-service-transport_neighbours.c:2262
+#: src/transport/gnunet-service-transport_neighbours.c:2261
msgid "# SYN messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2267
+#: src/transport/gnunet-service-transport_neighbours.c:2266
#, c-format
msgid "SYN request from peer `%s' ignored due impending shutdown\n"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:2654
+#: src/transport/gnunet-service-transport_neighbours.c:2653
msgid "# Attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3139
+#: src/transport/gnunet-service-transport_neighbours.c:3138
msgid "# SYN_ACK messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3147
+#: src/transport/gnunet-service-transport_neighbours.c:3146
msgid "# unexpected SYN_ACK messages (no peer)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3165
-#: src/transport/gnunet-service-transport_neighbours.c:3189
+#: src/transport/gnunet-service-transport_neighbours.c:3164
+#: src/transport/gnunet-service-transport_neighbours.c:3188
msgid "# unexpected SYN_ACK messages (not ready)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3201
+#: src/transport/gnunet-service-transport_neighbours.c:3200
msgid "# unexpected SYN_ACK messages (waiting on ATS)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3226
+#: src/transport/gnunet-service-transport_neighbours.c:3225
msgid "# Successful attempts to switch addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3239
+#: src/transport/gnunet-service-transport_neighbours.c:3238
msgid "# unexpected SYN_ACK messages (disconnecting)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3412
+#: src/transport/gnunet-service-transport_neighbours.c:3411
msgid "# ACK messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3448
+#: src/transport/gnunet-service-transport_neighbours.c:3447
msgid "# unexpected ACK messages"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3536
+#: src/transport/gnunet-service-transport_neighbours.c:3535
msgid "# quota messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3543
+#: src/transport/gnunet-service-transport_neighbours.c:3542
msgid "# QUOTA messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3583
+#: src/transport/gnunet-service-transport_neighbours.c:3582
msgid "# disconnect messages ignored (malformed)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3590
+#: src/transport/gnunet-service-transport_neighbours.c:3589
msgid "# DISCONNECT messages received"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3601
+#: src/transport/gnunet-service-transport_neighbours.c:3600
msgid "# disconnect messages ignored (timestamp)"
msgstr ""
-#: src/transport/gnunet-service-transport_neighbours.c:3736
+#: src/transport/gnunet-service-transport_neighbours.c:3735
msgid "# disconnected from peer upon explicit request"
msgstr ""
#: src/transport/gnunet-service-transport_validation.c:491
#: src/transport/gnunet-service-transport_validation.c:677
#: src/transport/gnunet-service-transport_validation.c:997
-#: src/transport/gnunet-service-transport_validation.c:1610
+#: src/transport/gnunet-service-transport_validation.c:1609
#, fuzzy
msgid "# validations running"
msgstr "sqlite 数据仓库"
msgid "# address revalidations started"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1124
+#: src/transport/gnunet-service-transport_validation.c:1123
msgid "# PING message for different peer received"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1175
+#: src/transport/gnunet-service-transport_validation.c:1174
#, c-format
msgid "Plugin `%s' not available, cannot confirm having this address\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1188
+#: src/transport/gnunet-service-transport_validation.c:1187
msgid "# failed address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1191
+#: src/transport/gnunet-service-transport_validation.c:1190
#, c-format
msgid "Address `%s' is not one of my addresses, not confirming PING\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1199
+#: src/transport/gnunet-service-transport_validation.c:1198
msgid "# successful address checks during validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1212
+#: src/transport/gnunet-service-transport_validation.c:1211
#, c-format
msgid ""
"Not confirming PING from peer `%s' with address `%s' since I cannot confirm "
"having this address.\n"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1267
+#: src/transport/gnunet-service-transport_validation.c:1266
#, fuzzy, c-format
msgid "Failed to create PONG signature for peer `%s'\n"
msgstr "发送消息失败。\n"
-#: src/transport/gnunet-service-transport_validation.c:1318
+#: src/transport/gnunet-service-transport_validation.c:1317
msgid "# PONGs unicast via reliable transport"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1327
+#: src/transport/gnunet-service-transport_validation.c:1326
msgid "# PONGs multicast to all available addresses"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1500
+#: src/transport/gnunet-service-transport_validation.c:1499
msgid "# PONGs dropped, no matching pending validation"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1518
+#: src/transport/gnunet-service-transport_validation.c:1517
msgid "# PONGs dropped, signature expired"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1573
+#: src/transport/gnunet-service-transport_validation.c:1572
msgid "# validations succeeded"
msgstr ""
-#: src/transport/gnunet-service-transport_validation.c:1628
+#: src/transport/gnunet-service-transport_validation.c:1627
msgid "# HELLOs given to peerinfo"
msgstr ""
-#: src/transport/gnunet-transport.c:406
+#: src/transport/gnunet-transport-profiler.c:219
+#, c-format
+msgid "%llu B in %llu ms == %.2f KB/s!\n"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:617
+msgid "send data to peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:621
+msgid "receive data from peer"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:626
+msgid "iterations"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:631
+#, fuzzy
+msgid "number of messages to send"
+msgstr "每次迭代所使用的消息数量"
+
+#: src/transport/gnunet-transport-profiler.c:636
+#, fuzzy
+msgid "message size to use"
+msgstr "消息尺寸"
+
+#: src/transport/gnunet-transport-profiler.c:641
+#: src/transport/gnunet-transport.c:1462
+msgid "peer identity"
+msgstr ""
+
+#: src/transport/gnunet-transport-profiler.c:652
+#: src/transport/gnunet-transport.c:1482
+#, fuzzy
+msgid "Direct access to transport service."
+msgstr "初始化“%s”服务失败。\n"
+
+#: src/transport/gnunet-transport.c:413
#, c-format
msgid "Transmitted %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:415
+#: src/transport/gnunet-transport.c:423
#, c-format
msgid "Received %llu bytes/s (%llu bytes in %s)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:454
+#: src/transport/gnunet-transport.c:467
#, fuzzy, c-format
msgid "Failed to connect to `%s'\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:466
+#: src/transport/gnunet-transport.c:480
#, fuzzy, c-format
msgid "Failed to resolve address for peer `%s'\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/transport/gnunet-transport.c:477
+#: src/transport/gnunet-transport.c:494
#, fuzzy
msgid "Failed to list connections, timeout occurred\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:504
+#: src/transport/gnunet-transport.c:527
#, c-format
msgid "Transmitting %u bytes\n"
msgstr ""
-#: src/transport/gnunet-transport.c:537
+#: src/transport/gnunet-transport.c:561
#, c-format
msgid ""
"Successfully connected to `%s', starting to send benchmark data in %u Kb "
"blocks\n"
msgstr ""
-#: src/transport/gnunet-transport.c:566
+#: src/transport/gnunet-transport.c:592
#, fuzzy, c-format
msgid "Disconnected from peer `%s' while benchmarking\n"
msgstr "“%s”已连接到“%s”。\n"
-#: src/transport/gnunet-transport.c:590 src/transport/gnunet-transport.c:619
+#: src/transport/gnunet-transport.c:616 src/transport/gnunet-transport.c:645
#, c-format
msgid "%24s: %-17s %4s (%u connections in total)\n"
msgstr ""
-#: src/transport/gnunet-transport.c:592
+#: src/transport/gnunet-transport.c:618
#, fuzzy
msgid "Connected to"
msgstr "“%s”已连接到“%s”。\n"
-#: src/transport/gnunet-transport.c:621
+#: src/transport/gnunet-transport.c:647
#, fuzzy
msgid "Disconnected from"
msgstr "“%s”已连接到“%s”。\n"
-#: src/transport/gnunet-transport.c:654
+#: src/transport/gnunet-transport.c:682
#, c-format
msgid "Received %u bytes\n"
msgstr ""
-#: src/transport/gnunet-transport.c:690
+#: src/transport/gnunet-transport.c:719
#, c-format
msgid "Peer `%s': %s %s in state `%s' until %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:702
+#: src/transport/gnunet-transport.c:731
#, fuzzy, c-format
msgid "Peer `%s': %s %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/transport/gnunet-transport.c:1100
+#: src/transport/gnunet-transport.c:1144
#, fuzzy
msgid "Monitor disconnected from transport service. Reconnecting.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:1195
+#: src/transport/gnunet-transport.c:1251
#, c-format
msgid ""
"Multiple operations given. Please choose only one operation: %s, %s, %s, %s, "
"%s, %s %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1210
+#: src/transport/gnunet-transport.c:1264
#, c-format
msgid ""
"No operation given. Please choose one operation: %s, %s, %s, %s, %s, %s, %s\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1238
+#: src/transport/gnunet-transport.c:1294
#, fuzzy
msgid "Failed to connect to transport service for disconnection\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:1244
+#: src/transport/gnunet-transport.c:1300
msgid "Blacklisting request in place, stop with CTRL-C\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1266 src/transport/gnunet-transport.c:1292
-#: src/transport/gnunet-transport.c:1338
+#: src/transport/gnunet-transport.c:1325 src/transport/gnunet-transport.c:1355
+#: src/transport/gnunet-transport.c:1408
#, fuzzy
msgid "Failed to connect to transport service\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:1297
+#: src/transport/gnunet-transport.c:1362
msgid "Starting to receive benchmark data\n"
msgstr ""
-#: src/transport/gnunet-transport.c:1363
+#: src/transport/gnunet-transport.c:1433
#, fuzzy
msgid "print information for all peers (instead of only connected peers)"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/transport/gnunet-transport.c:1369
+#: src/transport/gnunet-transport.c:1437
msgid "measure how fast we are receiving data from all peers (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1373
+#: src/transport/gnunet-transport.c:1441
#, fuzzy
msgid "disconnect from a peer"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/gnunet-transport.c:1379
+#: src/transport/gnunet-transport.c:1445
msgid "provide information about all current connections (once)"
msgstr ""
-#: src/transport/gnunet-transport.c:1391
+#: src/transport/gnunet-transport.c:1453
msgid ""
"provide information about all connects and disconnect events (continuously)"
msgstr ""
-#: src/transport/gnunet-transport.c:1395
+#: src/transport/gnunet-transport.c:1457
msgid "do not resolve hostnames"
msgstr ""
-#: src/transport/gnunet-transport.c:1400
-#: src/transport/gnunet-transport-profiler.c:601
-msgid "peer identity"
-msgstr ""
-
-#: src/transport/gnunet-transport.c:1404
+#: src/transport/gnunet-transport.c:1466
msgid "monitor plugin sessions"
msgstr ""
-#: src/transport/gnunet-transport.c:1410
+#: src/transport/gnunet-transport.c:1471
msgid "send data for benchmarking to the other peer (until CTRL-C)"
msgstr ""
-#: src/transport/gnunet-transport.c:1422
-#: src/transport/gnunet-transport-profiler.c:613
-#, fuzzy
-msgid "Direct access to transport service."
-msgstr "初始化“%s”服务失败。\n"
-
-#: src/transport/gnunet-transport-profiler.c:220
-#, c-format
-msgid "%llu B in %llu ms == %.2f KB/s!\n"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:577
-msgid "send data to peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:581
-msgid "receive data from peer"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:586
-msgid "iterations"
-msgstr ""
-
-#: src/transport/gnunet-transport-profiler.c:591
-#, fuzzy
-msgid "number of messages to send"
-msgstr "每次迭代所使用的消息数量"
-
-#: src/transport/gnunet-transport-profiler.c:596
-#, fuzzy
-msgid "message size to use"
-msgstr "消息尺寸"
-
-#: src/transport/plugin_transport_http_client.c:1471
+#: src/transport/plugin_transport_http_client.c:1474
#: src/transport/plugin_transport_http_server.c:2312
#: src/transport/plugin_transport_http_server.c:3530
-#: src/transport/plugin_transport_tcp.c:3901
-#: src/transport/plugin_transport_tcp.c:3908
+#: src/transport/plugin_transport_tcp.c:3895
+#: src/transport/plugin_transport_tcp.c:3902
+#: src/transport/plugin_transport_xt.c:3899
+#: src/transport/plugin_transport_xt.c:3906
msgid "TCP_STEALTH not supported on this platform.\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2112
+#: src/transport/plugin_transport_http_client.c:2115
#, c-format
msgid "Could not initialize curl multi handle, failed to start %s plugin!\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2161
+#: src/transport/plugin_transport_http_client.c:2164
#: src/transport/plugin_transport_http_server.c:3245
#, fuzzy, c-format
msgid "Shutting down plugin `%s'\n"
msgstr "未知的命令“%s”。\n"
-#: src/transport/plugin_transport_http_client.c:2178
+#: src/transport/plugin_transport_http_client.c:2181
#: src/transport/plugin_transport_http_server.c:3315
#, c-format
msgid "Shutdown for plugin `%s' complete\n"
msgstr ""
-#: src/transport/plugin_transport_http_client.c:2212
+#: src/transport/plugin_transport_http_client.c:2215
#, fuzzy, c-format
msgid "Maximum number of requests is %u\n"
msgstr "增加 TCP/IP 的最大连接数"
#: src/transport/plugin_transport_http_server.c:2905
#: src/transport/plugin_transport_udp.c:3627
+#: src/transport/plugin_transport_xu.c:2049
msgid "Disabling IPv6 since it is not supported on this system!\n"
msgstr ""
msgid "# bytes dropped by SMTP (outgoing)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1557
-#: src/transport/plugin_transport_tcp.c:2883
+#: src/transport/plugin_transport_tcp.c:1551
+#: src/transport/plugin_transport_tcp.c:2877
+#: src/transport/plugin_transport_xt.c:1553
+#: src/transport/plugin_transport_xt.c:2879
#, c-format
msgid "Unexpected address length: %u bytes\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1740
-#: src/transport/plugin_transport_tcp.c:1964
-#: src/transport/plugin_transport_tcp.c:3147
-#: src/transport/plugin_transport_tcp.c:4024
+#: src/transport/plugin_transport_tcp.c:1734
+#: src/transport/plugin_transport_tcp.c:1958
+#: src/transport/plugin_transport_tcp.c:3141
+#: src/transport/plugin_transport_tcp.c:4018
+#: src/transport/plugin_transport_xt.c:1736
+#: src/transport/plugin_transport_xt.c:1960
+#: src/transport/plugin_transport_xt.c:3143
msgid "# TCP sessions active"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1782
-#: src/transport/plugin_transport_tcp.c:1946
-#: src/transport/plugin_transport_tcp.c:2070
-#: src/transport/plugin_transport_tcp.c:2143
-#: src/transport/plugin_transport_tcp.c:2243
-#: src/transport/plugin_transport_tcp.c:2268
+#: src/transport/plugin_transport_tcp.c:1776
+#: src/transport/plugin_transport_tcp.c:1940
+#: src/transport/plugin_transport_tcp.c:2064
+#: src/transport/plugin_transport_tcp.c:2137
+#: src/transport/plugin_transport_tcp.c:2237
+#: src/transport/plugin_transport_tcp.c:2262
+#: src/transport/plugin_transport_xt.c:1778
+#: src/transport/plugin_transport_xt.c:1942
+#: src/transport/plugin_transport_xt.c:2066
+#: src/transport/plugin_transport_xt.c:2139
+#: src/transport/plugin_transport_xt.c:2239
+#: src/transport/plugin_transport_xt.c:2264
msgid "# bytes currently in TCP buffers"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:1785
+#: src/transport/plugin_transport_tcp.c:1779
+#: src/transport/plugin_transport_xt.c:1781
msgid "# bytes discarded by TCP (disconnect)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2073
+#: src/transport/plugin_transport_tcp.c:2067
+#: src/transport/plugin_transport_xt.c:2069
msgid "# bytes discarded by TCP (timeout)"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2147
+#: src/transport/plugin_transport_tcp.c:2141
+#: src/transport/plugin_transport_xt.c:2143
msgid "# bytes transmitted via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2545
+#: src/transport/plugin_transport_tcp.c:2539
+#: src/transport/plugin_transport_xt.c:2541
msgid "# requests to create session with invalid address"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:2721
+#: src/transport/plugin_transport_tcp.c:2715
+#: src/transport/plugin_transport_xt.c:2717
msgid "# transport-service disconnect requests for TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3213
+#: src/transport/plugin_transport_tcp.c:3207
+#: src/transport/plugin_transport_xt.c:3209
msgid "# TCP WELCOME messages received"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3419
+#: src/transport/plugin_transport_tcp.c:3413
+#: src/transport/plugin_transport_xt.c:3415
msgid "# bytes received via TCP"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3470
-#: src/transport/plugin_transport_tcp.c:3528
+#: src/transport/plugin_transport_tcp.c:3464
+#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_xt.c:3466
+#: src/transport/plugin_transport_xt.c:3524
#, fuzzy
msgid "# TCP server connections active"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_tcp.c:3468
+#: src/transport/plugin_transport_xt.c:3470
#, fuzzy
msgid "# TCP server connect events"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/transport/plugin_transport_tcp.c:3480
+#: src/transport/plugin_transport_tcp.c:3474
+#: src/transport/plugin_transport_xt.c:3476
msgid "TCP connection limit reached, suspending server\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3482
+#: src/transport/plugin_transport_tcp.c:3476
+#: src/transport/plugin_transport_xt.c:3478
msgid "# TCP service suspended"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3522
+#: src/transport/plugin_transport_tcp.c:3516
+#: src/transport/plugin_transport_xt.c:3518
msgid "# TCP service resumed"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3532
+#: src/transport/plugin_transport_tcp.c:3526
+#: src/transport/plugin_transport_xt.c:3528
msgid "# network-level TCP disconnect events"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:3851
+#: src/transport/plugin_transport_tcp.c:3845
+#: src/transport/plugin_transport_xt.c:3849
#, fuzzy
msgid "Failed to start service.\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/transport/plugin_transport_tcp.c:4012
+#: src/transport/plugin_transport_tcp.c:4006
#, c-format
msgid "TCP transport listening on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4016
+#: src/transport/plugin_transport_tcp.c:4010
msgid "TCP transport not listening on any port (client only)\n"
msgstr ""
-#: src/transport/plugin_transport_tcp.c:4020
+#: src/transport/plugin_transport_tcp.c:4014
#, c-format
msgid "TCP transport advertises itself as being on port %llu\n"
msgstr ""
-#: src/transport/plugin_transport_udp_broadcasting.c:168
-msgid "# Multicast HELLO beacons received via UDP"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:548
-msgid ""
-"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
-msgstr ""
-
-#: src/transport/plugin_transport_udp_broadcasting.c:565
-#, c-format
-msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
-msgstr ""
-
#: src/transport/plugin_transport_udp.c:3371
#, c-format
msgid ""
msgstr "打开日志文件“%s”失败:%s\n"
#: src/transport/plugin_transport_udp.c:3721
+#: src/transport/plugin_transport_xu.c:2143
msgid "Disabling IPv4 since it is not supported on this system!\n"
msgstr ""
#: src/transport/plugin_transport_udp.c:3883
#: src/transport/plugin_transport_udp.c:3897
+#: src/transport/plugin_transport_xu.c:2301
+#: src/transport/plugin_transport_xu.c:2315
msgid "must be in [0,65535]"
msgstr ""
#: src/transport/plugin_transport_udp.c:3929
+#: src/transport/plugin_transport_xu.c:2347
#, fuzzy
msgid "must be valid IPv4 address"
msgstr "“%s”不可用。\n"
#: src/transport/plugin_transport_udp.c:3956
+#: src/transport/plugin_transport_xu.c:2374
#, fuzzy
msgid "must be valid IPv6 address"
msgstr "“%s”不可用。\n"
msgid "Failed to create UDP network sockets\n"
msgstr "发送消息失败。\n"
+#: src/transport/plugin_transport_udp_broadcasting.c:168
+msgid "# Multicast HELLO beacons received via UDP"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:548
+msgid ""
+"Disabling HELLO broadcasting due to friend-to-friend only configuration!\n"
+msgstr ""
+
+#: src/transport/plugin_transport_udp_broadcasting.c:565
+#, c-format
+msgid "Failed to set IPv4 broadcast option for broadcast socket on port %d\n"
+msgstr ""
+
#: src/transport/plugin_transport_unix.c:1416
#, fuzzy, c-format
msgid "Cannot bind to `%s'\n"
msgid "# sessions allocated"
msgstr ""
+#: src/transport/plugin_transport_xt.c:4010
+#, c-format
+msgid "XT transport listening on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4014
+msgid "XT transport not listening on any port (client only)\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4018
+#, c-format
+msgid "XT transport advertises itself as being on port %llu\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xt.c:4022
+#, fuzzy
+msgid "# XT sessions active"
+msgstr ""
+"\n"
+"按任意键继续\n"
+
+#: src/transport/plugin_transport_xu.c:1237
+#, c-format
+msgid ""
+"XU could not transmit message to `%s': Network seems down, please check your "
+"network configuration\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:1251
+msgid ""
+"XU could not transmit IPv6 message! Please check your network configuration "
+"and disable IPv6 if your connection does not have a global IPv6 address\n"
+msgstr ""
+
+#: src/transport/plugin_transport_xu.c:2125
+#: src/transport/plugin_transport_xu.c:2224
+#, fuzzy, c-format
+msgid "Failed to bind XU socket to %s: %s\n"
+msgstr "打开日志文件“%s”失败:%s\n"
+
+#: src/transport/plugin_transport_xu.c:2234
+#, fuzzy
+msgid "Failed to open XU sockets\n"
+msgstr "打开日志文件“%s”失败:%s\n"
+
+#: src/transport/plugin_transport_xu.c:2398
+#, fuzzy
+msgid "Failed to create XU network sockets\n"
+msgstr "发送消息失败。\n"
+
#: src/transport/tcp_connection_legacy.c:452
#, fuzzy, c-format
msgid "Access denied to `%s'\n"
msgid "Accepting connection from `%s': %p\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1624
+#: src/transport/tcp_server_legacy.c:474 src/util/service.c:1111
#, fuzzy, c-format
msgid "`%s' failed for port %d (%s).\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1634
+#: src/transport/tcp_server_legacy.c:484 src/util/service.c:1121
#, c-format
msgid "`%s' failed for port %d (%s): address already in use\n"
msgstr ""
-#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1640
+#: src/transport/tcp_server_legacy.c:490 src/util/service.c:1127
#, fuzzy, c-format
msgid "`%s' failed for `%s': address already in use\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
"`GNUNET_SERVER_receive_done' after %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:339 src/util/service.c:864
+#: src/transport/tcp_service_legacy.c:339 src/util/service.c:2396
#, c-format
msgid "Unknown address family %d\n"
msgstr ""
msgid "Access from `%s' denied to service `%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:402 src/util/service.c:988
+#: src/transport/tcp_service_legacy.c:402 src/util/service.c:439
#, c-format
msgid "Could not parse IPv4 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:440 src/util/service.c:1031
+#: src/transport/tcp_service_legacy.c:440 src/util/service.c:482
#, c-format
msgid "Could not parse IPv6 network specification `%s' for `%s:%s'\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1555
+#: src/transport/tcp_service_legacy.c:904 src/util/service.c:1042
msgid "Could not access a pre-bound socket, will try to bind myself\n"
msgstr ""
#: src/transport/tcp_service_legacy.c:953
-#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1708
+#: src/transport/tcp_service_legacy.c:971 src/util/service.c:1195
#, c-format
msgid "Specified value for `%s' of service `%s' is invalid\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1741
+#: src/transport/tcp_service_legacy.c:996 src/util/service.c:1228
#, c-format
msgid "Could not access pre-bound socket %u, will try to bind myself\n"
msgstr ""
msgid "Service `%s' runs at %s\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:2015
+#: src/transport/tcp_service_legacy.c:1251 src/util/service.c:1502
msgid "Service process failed to initialize\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:2019
+#: src/transport/tcp_service_legacy.c:1255 src/util/service.c:1506
msgid "Service process could not initialize server function\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:2023
+#: src/transport/tcp_service_legacy.c:1259 src/util/service.c:1510
msgid "Service process failed to report status\n"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1535
-#: src/util/service.c:1893
+#: src/transport/tcp_service_legacy.c:1313 src/util/disk.c:1525
+#: src/util/service.c:1380
#, c-format
msgid "Cannot obtain information about user `%s': %s\n"
msgstr "无法获取有关用户“%s”的信息:%s\n"
-#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1895
+#: src/transport/tcp_service_legacy.c:1314 src/util/service.c:1382
msgid "No such user"
msgstr "无此用户"
-#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1914
+#: src/transport/tcp_service_legacy.c:1327 src/util/service.c:1401
#, c-format
msgid "Cannot change user/group to `%s': %s\n"
msgstr "无法更改用户/组为“%s”:%s\n"
-#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:2276
+#: src/transport/tcp_service_legacy.c:1398 src/util/service.c:1762
msgid "do daemonize (detach from terminal)"
msgstr ""
-#: src/transport/tcp_service_legacy.c:1448
-#: src/transport/transport-testing2.c:706 src/util/service.c:2340
-#: src/util/service.c:2355
+#: src/transport/tcp_service_legacy.c:1448 src/util/service.c:1826
+#: src/util/service.c:1841
#, fuzzy, c-format
msgid "Malformed configuration file `%s', exit ...\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:2367
+#: src/transport/tcp_service_legacy.c:1458 src/util/service.c:1853
#, fuzzy
msgid "Malformed configuration, exit ...\n"
msgstr "解析配置文件“%s”失败\n"
msgid "Could not access configuration file `%s'\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/transport/transport_api2_communication.c:707
+#: src/transport/transport_api2_communication.c:764
msgid "Dropped backchanel message: handler not provided by communicator\n"
msgstr ""
msgid "Metadata `%s' failed to deserialize"
msgstr ""
-#: src/util/client.c:749
+#: src/util/client.c:734
msgid "not a valid filename"
msgstr ""
-#: src/util/client.c:941
+#: src/util/client.c:925
#, c-format
msgid "Need a non-empty hostname for service `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:267 src/util/common_logging.c:1159
+#: src/util/common_logging.c:259 src/util/common_logging.c:1162
msgid "DEBUG"
msgstr "调试"
-#: src/util/common_logging.c:269 src/util/common_logging.c:1157
+#: src/util/common_logging.c:261 src/util/common_logging.c:1160
msgid "INFO"
msgstr "信息"
-#: src/util/common_logging.c:271 src/util/common_logging.c:1155
+#: src/util/common_logging.c:263 src/util/common_logging.c:1158
msgid "MESSAGE"
msgstr ""
-#: src/util/common_logging.c:273 src/util/common_logging.c:1153
+#: src/util/common_logging.c:265 src/util/common_logging.c:1156
msgid "WARNING"
msgstr "警告"
-#: src/util/common_logging.c:275 src/util/common_logging.c:1151
+#: src/util/common_logging.c:267 src/util/common_logging.c:1154
msgid "ERROR"
msgstr "错误"
-#: src/util/common_logging.c:277 src/util/common_logging.c:1161
+#: src/util/common_logging.c:269 src/util/common_logging.c:1164
msgid "NONE"
msgstr ""
-#: src/util/common_logging.c:639 src/util/common_logging.c:675
+#: src/util/common_logging.c:633 src/util/common_logging.c:663
#, c-format
msgid "ERROR: Unable to parse log definition: Syntax error at `%s'.\n"
msgstr ""
-#: src/util/common_logging.c:923
+#: src/util/common_logging.c:898
#, fuzzy, c-format
msgid "Message `%.*s' repeated %u times in the last %s\n"
msgstr "消息“%.*s”重复了 %u 次,在最近 %llu 秒内\n"
-#: src/util/common_logging.c:1162
+#: src/util/common_logging.c:1165
msgid "INVALID"
msgstr ""
-#: src/util/common_logging.c:1447
+#: src/util/common_logging.c:1458
msgid "unknown address"
msgstr ""
-#: src/util/common_logging.c:1489
+#: src/util/common_logging.c:1500
msgid "invalid address"
msgstr ""
-#: src/util/common_logging.c:1508
+#: src/util/common_logging.c:1518
#, fuzzy, c-format
msgid "Configuration fails to specify option `%s' in section `%s'!\n"
msgstr "配置不满足配置规范文件“%s”的约束!\n"
-#: src/util/common_logging.c:1531
+#: src/util/common_logging.c:1539
#, fuzzy, c-format
msgid ""
"Configuration specifies invalid value for option `%s' in section `%s': %s\n"
#: src/util/container_bloomfilter.c:532
#, c-format
msgid ""
-"Size of file on disk is incorrect for this Bloom filter (want %llu, have "
-"%llu)\n"
+"Size of file on disk is incorrect for this Bloom filter (want %llu, have %"
+"llu)\n"
msgstr ""
-#: src/util/crypto_ecc.c:949
+#: src/util/crypto_ecc.c:862
#, fuzzy, c-format
msgid "ECC signing failed at %s:%d: %s\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/util/crypto_ecc.c:1007
+#: src/util/crypto_ecc.c:917
#, fuzzy, c-format
msgid "EdDSA signing failed at %s:%d: %s\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/util/crypto_ecc.c:1094
+#: src/util/crypto_ecc.c:996
#, fuzzy, c-format
msgid "ECDSA signature verification failed at %s:%d: %s\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/util/crypto_ecc.c:1163
+#: src/util/crypto_ecc.c:1057
#, fuzzy, c-format
msgid "EdDSA signature verification failed at %s:%d: %s\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
msgid "Could not load peer's private key\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/util/crypto_random.c:329
+#: src/util/crypto_random.c:306
#, c-format
msgid "libgcrypt has not the expected version (version %s is required).\n"
msgstr "libgcrypt 的版本不符合预期(要求版本 %s)。\n"
msgid "RSA signature verification failed at %s:%d: %s\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/util/disk.c:1265
+#: src/util/disk.c:1255
#, c-format
msgid "Expected `%s' to be a directory!\n"
msgstr "“%s”应为目录!\n"
msgid "Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/util/dnsparser.c:910
+#: src/util/dnsparser.c:950
#, fuzzy, c-format
msgid "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
msgid "Sent DNS request to %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/util/getopt.c:567
+#: src/util/getopt.c:568
#, c-format
msgid "%s: option `%s' is ambiguous\n"
msgstr "%s:选项“%s”有歧义\n"
msgid "%s: option `--%s' does not allow an argument\n"
msgstr "%s:选项“--%s”不允许有参数\n"
-#: src/util/getopt.c:598
+#: src/util/getopt.c:597
#, c-format
msgid "%s: option `%c%s' does not allow an argument\n"
msgstr "%s:选项“%c%s”不允许有参数\n"
-#: src/util/getopt.c:618 src/util/getopt.c:799
+#: src/util/getopt.c:614 src/util/getopt.c:781
#, c-format
msgid "%s: option `%s' requires an argument\n"
msgstr "%s:选项“%s”要求有一个参数\n"
-#: src/util/getopt.c:649
+#: src/util/getopt.c:643
#, c-format
msgid "%s: unrecognized option `--%s'\n"
msgstr "%s:无法识别的选项“--%s”\n"
-#: src/util/getopt.c:655
+#: src/util/getopt.c:647
#, c-format
msgid "%s: unrecognized option `%c%s'\n"
msgstr "%s:无法识别的选项“%c%s”\n"
-#: src/util/getopt.c:682
+#: src/util/getopt.c:672
#, c-format
msgid "%s: illegal option -- %c\n"
msgstr "%s:非法选项 -- %c\n"
-#: src/util/getopt.c:684
+#: src/util/getopt.c:674
#, c-format
msgid "%s: invalid option -- %c\n"
msgstr "%s:无效选项 -- %c\n"
-#: src/util/getopt.c:713 src/util/getopt.c:849
+#: src/util/getopt.c:702 src/util/getopt.c:829
#, c-format
msgid "%s: option requires an argument -- %c\n"
msgstr "%s:选项要求有一个参数 -- %c\n"
-#: src/util/getopt.c:763
+#: src/util/getopt.c:750
#, c-format
msgid "%s: option `-W %s' is ambiguous\n"
msgstr "%s:选项“-W %s”有歧义\n"
-#: src/util/getopt.c:783
+#: src/util/getopt.c:768
#, c-format
msgid "%s: option `-W %s' does not allow an argument\n"
msgstr "%s:选项“-W %s” 不允许有参数\n"
-#: src/util/getopt.c:975
+#: src/util/getopt.c:947
#, fuzzy, c-format
msgid "Use %s to get a list of options.\n"
msgstr "请使用 --help 获取选项列表。\n"
-#: src/util/getopt.c:987
-#, c-format
-msgid "Option `%s' can't be used with other options.\n"
-msgstr ""
-
-#: src/util/getopt.c:999
+#: src/util/getopt.c:962
#, fuzzy, c-format
msgid "Missing mandatory option `%s'.\n"
msgstr "配置文件“%s”已写入。\n"
-#: src/util/getopt_helpers.c:68
+#: src/util/getopt_helpers.c:70
msgid "print the version number"
msgstr ""
-#: src/util/getopt_helpers.c:113
+#: src/util/getopt_helpers.c:116
#, c-format
msgid ""
"Arguments mandatory for long options are also mandatory for short options.\n"
msgstr "长选项的必选参数对短选项也是必选的。\n"
-#: src/util/getopt_helpers.c:201
+#: src/util/getopt_helpers.c:204
msgid "print this help"
msgstr ""
-#: src/util/getopt_helpers.c:277 src/util/gnunet-qr.c:296
+#: src/util/getopt_helpers.c:282
msgid "be verbose"
msgstr ""
-#: src/util/getopt_helpers.c:413
+#: src/util/getopt_helpers.c:423
msgid "configure logging to use LOGLEVEL"
msgstr ""
-#: src/util/getopt_helpers.c:491
+#: src/util/getopt_helpers.c:503
msgid "configure logging to write logs to FILENAME"
msgstr ""
-#: src/util/getopt_helpers.c:512
+#: src/util/getopt_helpers.c:525
#, fuzzy
msgid "use configuration file FILENAME"
msgstr "更改配置文件中的一个值"
-#: src/util/getopt_helpers.c:547 src/util/getopt_helpers.c:741
-#: src/util/getopt_helpers.c:804
+#: src/util/getopt_helpers.c:564 src/util/getopt_helpers.c:770
+#: src/util/getopt_helpers.c:839
#, c-format
msgid "You must pass a number to the `%s' option.\n"
msgstr "您必须向“%s”选项传递一个数字。\n"
-#: src/util/getopt_helpers.c:608
+#: src/util/getopt_helpers.c:629
#, fuzzy, c-format
msgid "You must pass relative time to the `%s' option.\n"
msgstr "您必须向“%s”选项传递一个数字。\n"
-#: src/util/getopt_helpers.c:670
+#: src/util/getopt_helpers.c:695
#, fuzzy, c-format
msgid "You must pass absolute time to the `%s' option.\n"
msgstr "您必须向“%s”选项传递一个数字。\n"
-#: src/util/getopt_helpers.c:734
+#: src/util/getopt_helpers.c:760
#, c-format
msgid "Your input for the '%s' option has to be a non negative number \n"
msgstr ""
-#: src/util/getopt_helpers.c:811
+#: src/util/getopt_helpers.c:846
#, fuzzy, c-format
msgid "You must pass a number below %u to the `%s' option.\n"
msgstr "您必须向“%s”选项传递一个数字。\n"
-#: src/util/getopt_helpers.c:896
+#: src/util/getopt_helpers.c:932
#, c-format
msgid "Argument `%s' malformed. Expected base32 (Crockford) encoded value.\n"
msgstr ""
-#: src/util/gnunet-config.c:167
+#: src/util/gnunet-config.c:160
#, fuzzy, c-format
msgid "failed to load configuration defaults"
msgstr "解析配置文件“%s”失败\n"
-#: src/util/gnunet-config.c:179
+#: src/util/gnunet-config.c:173
#, fuzzy, c-format
msgid "%s or %s argument is required\n"
msgstr "设置要使用的昵称(必须)"
-#: src/util/gnunet-config.c:186
+#: src/util/gnunet-config.c:181
#, c-format
msgid "The following sections are available:\n"
msgstr ""
-#: src/util/gnunet-config.c:234
+#: src/util/gnunet-config.c:232
#, c-format
msgid "--option argument required to set value\n"
msgstr ""
-#: src/util/gnunet-config.c:284
-msgid "interpret option value as a filename (with $-expansion)"
+#: src/util/gnunet-config.c:286
+msgid "obtain option of value as a filename (with $-expansion)"
msgstr ""
#: src/util/gnunet-config.c:291
-msgid "test if the current installation supports the specified BACKEND"
-msgstr ""
-
-#: src/util/gnunet-config.c:297
msgid "name of the section to access"
msgstr ""
-#: src/util/gnunet-config.c:302
+#: src/util/gnunet-config.c:296
msgid "name of the option to access"
msgstr ""
-#: src/util/gnunet-config.c:307
+#: src/util/gnunet-config.c:301
msgid "value to set"
msgstr ""
-#: src/util/gnunet-config.c:312
+#: src/util/gnunet-config.c:305
#, fuzzy
msgid "print available configuration sections"
msgstr "立即保存配置?"
-#: src/util/gnunet-config.c:318
+#: src/util/gnunet-config.c:309
msgid "write configuration file that only contains delta to defaults"
msgstr ""
-#: src/util/gnunet-config.c:330
+#: src/util/gnunet-config.c:322
#, fuzzy
msgid "Manipulate GNUnet configuration files"
msgstr "更改配置文件中的一个值"
msgid "Failed to open `%s': %s\n"
msgstr "打开日志文件“%s”失败:%s\n"
-#: src/util/gnunet-ecc.c:129
+#: src/util/gnunet-ecc.c:130
#, c-format
msgid "Generating %u keys like %s, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:142
+#: src/util/gnunet-ecc.c:143
#, c-format
msgid "Generating %u keys, please wait"
msgstr ""
-#: src/util/gnunet-ecc.c:183
+#: src/util/gnunet-ecc.c:184
#, fuzzy, c-format
msgid ""
"\n"
"Failed to write to `%s': %s\n"
msgstr "运行 %s失败:%s %d\n"
-#: src/util/gnunet-ecc.c:193
+#: src/util/gnunet-ecc.c:194
#, c-format
msgid ""
"\n"
"Finished!\n"
msgstr ""
-#: src/util/gnunet-ecc.c:196
+#: src/util/gnunet-ecc.c:197
#, c-format
msgid ""
"\n"
"Error, %u keys not generated\n"
msgstr ""
-#: src/util/gnunet-ecc.c:289
+#: src/util/gnunet-ecc.c:290
#, c-format
msgid "Hostkeys file `%s' not found\n"
msgstr ""
-#: src/util/gnunet-ecc.c:304
+#: src/util/gnunet-ecc.c:305
#, fuzzy, c-format
msgid "Hostkeys file `%s' is empty\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/util/gnunet-ecc.c:333
+#: src/util/gnunet-ecc.c:334
#, fuzzy, c-format
msgid "Could not read hostkey file: %s\n"
msgstr "找不到接口“%s”的一个 IP 地址。\n"
-#: src/util/gnunet-ecc.c:390
+#: src/util/gnunet-ecc.c:391
msgid "No hostkey file specified on command line\n"
msgstr ""
-#: src/util/gnunet-ecc.c:455
+#: src/util/gnunet-ecc.c:456
msgid "list keys included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:460
+#: src/util/gnunet-ecc.c:461
msgid "number of keys to list included in a file (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:465
+#: src/util/gnunet-ecc.c:466
msgid "create COUNT public-private key pairs (for testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:469
+#: src/util/gnunet-ecc.c:470
msgid "print the public key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:473
+#: src/util/gnunet-ecc.c:474
msgid "print the private key in ASCII format"
msgstr ""
-#: src/util/gnunet-ecc.c:477
+#: src/util/gnunet-ecc.c:478
msgid "print the public key in HEX format"
msgstr ""
-#: src/util/gnunet-ecc.c:481
+#: src/util/gnunet-ecc.c:482
msgid "print examples of ECC operations (used for compatibility testing)"
msgstr ""
-#: src/util/gnunet-ecc.c:497
+#: src/util/gnunet-ecc.c:498
#, fuzzy
msgid "Manipulate GNUnet private ECC key files"
msgstr "更改配置文件中的一个值"
-#: src/util/gnunet-qr.c:110 src/util/gnunet-uri.c:94
-#, fuzzy, c-format
-msgid "Invalid URI: does not start with `%s'\n"
-msgstr "无效的网络表示法(没有以“;”结尾:“%s”)\n"
-
-#: src/util/gnunet-qr.c:117 src/util/gnunet-uri.c:101
-#, c-format
-msgid "Invalid URI: fails to specify subsystem\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:124 src/util/gnunet-uri.c:108
-#, c-format
-msgid "No handler known for subsystem `%s'\n"
-msgstr ""
-
-#: src/util/gnunet-qr.c:292
-msgid "use video-device DEVICE (default: /dev/video0"
-msgstr ""
-
-#: src/util/gnunet-qr.c:300
-msgid "do not show preview windows"
-msgstr ""
-
-#: src/util/gnunet-qr.c:309
-msgid "Scan a QR code using a video device and import the uri read"
-msgstr ""
-
#: src/util/gnunet-resolver.c:168
msgid "perform a reverse lookup"
msgstr ""
msgid "Use build-in GNUnet stub resolver"
msgstr ""
-#: src/util/gnunet-scrypt.c:239
+#: src/util/gnunet-scrypt.c:242
#, c-format
msgid "Loading hostkey from `%s' failed.\n"
msgstr ""
-#: src/util/gnunet-scrypt.c:305
+#: src/util/gnunet-scrypt.c:317
msgid "number of bits to require for the proof of work"
msgstr ""
-#: src/util/gnunet-scrypt.c:311
+#: src/util/gnunet-scrypt.c:322
msgid "file with private key, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:317
+#: src/util/gnunet-scrypt.c:327
msgid "file with proof of work, otherwise default is used"
msgstr ""
-#: src/util/gnunet-scrypt.c:323
+#: src/util/gnunet-scrypt.c:332
msgid "time to wait between calculations"
msgstr ""
-#: src/util/gnunet-scrypt.c:336
+#: src/util/gnunet-scrypt.c:345
#, fuzzy
msgid "Manipulate GNUnet proof of work files"
msgstr "更改配置文件中的一个值"
-#: src/util/gnunet-service-resolver.c:1272
+#: src/util/gnunet-service-resolver.c:1443
msgid "No DNS server available. DNS resolution will not be possible.\n"
msgstr ""
-#: src/util/gnunet-uri.c:88
+#: src/util/gnunet-uri.c:85
#, c-format
msgid "No URI specified on command line\n"
msgstr ""
-#: src/util/gnunet-uri.c:178
+#: src/util/gnunet-uri.c:91
+#, fuzzy, c-format
+msgid "Invalid URI: does not start with `%s'\n"
+msgstr "无效的网络表示法(没有以“;”结尾:“%s”)\n"
+
+#: src/util/gnunet-uri.c:98
+#, c-format
+msgid "Invalid URI: fails to specify subsystem\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:108
+#, c-format
+msgid "No handler known for subsystem `%s'\n"
+msgstr ""
+
+#: src/util/gnunet-uri.c:170
msgid "Perform default-actions for GNUnet URIs"
msgstr ""
msgid "Error writing to `%s': %s\n"
msgstr "创建用户出错"
-#: src/util/network.c:176
+#: src/util/network.c:136
#, c-format
msgid "Unable to shorten unix path `%s' while keeping name unique\n"
msgstr ""
-#: src/util/network.c:1835 src/util/network.c:2019
+#: src/util/network.c:1795 src/util/network.c:1979
#, c-format
msgid ""
"Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"
"variable.\n"
msgstr "无法确定安装路径。请尝试设置“%s”\n"
-#: src/util/os_installation.c:929
+#: src/util/os_installation.c:881
#, fuzzy, c-format
msgid "Could not find binary `%s' in PATH!\n"
msgstr "找不到主机“%s”的 IP:%s\n"
-#: src/util/os_installation.c:970
+#: src/util/os_installation.c:922
#, c-format
msgid "Binary `%s' exists, but is not SUID\n"
msgstr ""
-#: src/util/os_installation.c:1001
+#: src/util/os_installation.c:953
#, fuzzy, c-format
msgid "CreateProcess failed for binary %s (%d).\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/util/os_installation.c:1011
+#: src/util/os_installation.c:963
#, c-format
msgid "GetExitCodeProcess failed for binary %s (%d).\n"
msgstr ""
msgid "Could not determine plugin installation path.\n"
msgstr "无法确定用户界面定义文件。"
-#: src/util/program.c:255
+#: src/util/program.c:283
#, fuzzy, c-format
msgid "Unreadable or malformed configuration file `%s', exit ...\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/util/program.c:272
+#: src/util/program.c:301
#, fuzzy, c-format
msgid "Unreadable or malformed default configuration file `%s', exit ...\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/util/program.c:287
+#: src/util/program.c:318
#, fuzzy
msgid "Unreadable or malformed configuration, exit ...\n"
msgstr "解析配置文件“%s”失败\n"
msgid "Could not resolve our FQDN: %s\n"
msgstr "无法解析“%s”(%s):%s\n"
-#: src/util/service.c:668
-#, c-format
+#: src/util/service.c:1307
msgid ""
-"Processing code for message of type %u did not call "
-"`GNUNET_SERVICE_client_continue' after %s\n"
+"Could not bind to any of the ports I was supposed to, refusing to run!\n"
msgstr ""
-#: src/util/service.c:1820
+#: src/util/service.c:2141
+#, c-format
msgid ""
-"Could not bind to any of the ports I was supposed to, refusing to run!\n"
+"Processing code for message of type %u did not call "
+"`GNUNET_SERVICE_client_continue' after %s\n"
msgstr ""
#: src/util/signal.c:89
msgid "signal (%d, %p) returned %d.\n"
msgstr ""
-#: src/util/socks.c:617
+#: src/util/socks.c:597
#, c-format
msgid "Attempting to use invalid port %d as SOCKS proxy for service `%s'.\n"
msgstr ""
-#: src/util/socks.c:634
+#: src/util/socks.c:616
#, c-format
msgid "Attempting to proxy service `%s' to invalid port %d or hostname.\n"
msgstr ""
msgid "b"
msgstr "b"
-#: src/util/strings.c:500
+#: src/util/strings.c:475
#, c-format
msgid "Character sets requested were `%s'->`%s'\n"
msgstr ""
-#: src/util/strings.c:627
+#: src/util/strings.c:602
msgid "Failed to expand `$HOME': environment variable `HOME' not set"
msgstr "扩展“$HOME”失败:没有设置环境变量“HOME”"
-#: src/util/strings.c:731
+#: src/util/strings.c:706
msgid "µs"
msgstr ""
-#: src/util/strings.c:735
+#: src/util/strings.c:710
msgid "forever"
msgstr ""
-#: src/util/strings.c:737
+#: src/util/strings.c:712
msgid "0 ms"
msgstr ""
-#: src/util/strings.c:743
+#: src/util/strings.c:718
msgid "ms"
msgstr "毫秒"
-#: src/util/strings.c:749
+#: src/util/strings.c:724
msgid "s"
msgstr "秒"
-#: src/util/strings.c:755
+#: src/util/strings.c:730
msgid "m"
msgstr "分"
-#: src/util/strings.c:761
+#: src/util/strings.c:736
msgid "h"
msgstr "时"
-#: src/util/strings.c:768
+#: src/util/strings.c:743
#, fuzzy
msgid "day"
msgstr " 天"
-#: src/util/strings.c:770
+#: src/util/strings.c:745
#, fuzzy
msgid "days"
msgstr " 天"
-#: src/util/strings.c:799
+#: src/util/strings.c:774
msgid "end of time"
msgstr ""
-#: src/util/strings.c:1301
+#: src/util/strings.c:1277
msgid "IPv6 address did not start with `['\n"
msgstr ""
-#: src/util/strings.c:1309
+#: src/util/strings.c:1285
msgid "IPv6 address did contain ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1315
+#: src/util/strings.c:1291
msgid "IPv6 address did contain ']' before ':' to separate port number\n"
msgstr ""
-#: src/util/strings.c:1325
+#: src/util/strings.c:1301
msgid "IPv6 address did contain a valid port number after the last ':'\n"
msgstr ""
-#: src/util/strings.c:1334
+#: src/util/strings.c:1310
#, fuzzy, c-format
msgid "Invalid IPv6 address `%s': %s\n"
msgstr "无效的进程优先级“%s”\n"
-#: src/util/strings.c:1610 src/util/strings.c:1626
+#: src/util/strings.c:1586 src/util/strings.c:1602
msgid "Port not in range\n"
msgstr ""
-#: src/util/strings.c:1635
+#: src/util/strings.c:1611
#, fuzzy, c-format
msgid "Malformed port policy `%s'\n"
msgstr "解析配置文件“%s”失败\n"
-#: src/util/strings.c:1720 src/util/strings.c:1752 src/util/strings.c:1801
-#: src/util/strings.c:1822
+#: src/util/strings.c:1696 src/util/strings.c:1728 src/util/strings.c:1777
+#: src/util/strings.c:1798
#, c-format
msgid "Invalid format for IP: `%s'\n"
msgstr "IP 格式无效:“%s”\n"
-#: src/util/strings.c:1778
+#: src/util/strings.c:1754
#, c-format
msgid "Invalid network notation ('/%d' is not legal in IPv4 CIDR)."
msgstr "网络表示法无效(“/%d” 在 IPv4 CIDR 中是非法的)。"
-#: src/util/strings.c:1831
+#: src/util/strings.c:1807
#, fuzzy, c-format
msgid "Invalid format: `%s'\n"
msgstr "IP 格式无效:“%s”\n"
-#: src/util/strings.c:1884
+#: src/util/strings.c:1860
#, c-format
msgid "Invalid network notation (does not end with ';': `%s')\n"
msgstr "无效的网络表示法(没有以“;”结尾:“%s”)\n"
-#: src/util/strings.c:1938
+#: src/util/strings.c:1914
#, c-format
msgid "Wrong format `%s' for netmask\n"
msgstr "网络掩码的格式“%s”错误\n"
-#: src/util/strings.c:1969
+#: src/util/strings.c:1945
#, c-format
msgid "Wrong format `%s' for network\n"
msgstr "网络的格式“%s”错误\n"
-#: src/util/time.c:844 src/util/time.c:876
+#: src/util/time.c:828 src/util/time.c:860
#, c-format
msgid "Failed to map `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/util/time.c:882
+#: src/util/time.c:866
#, c-format
msgid ""
"Failed to setup monotonic time file `%s', cannot assure monotonic time!\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:527 src/vpn/gnunet-service-vpn.c:1770
+#: src/vpn/gnunet-service-vpn.c:540 src/vpn/gnunet-service-vpn.c:1807
msgid "# Active channels"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:586
+#: src/vpn/gnunet-service-vpn.c:599
msgid "# Messages dropped in cadet queue (overflow)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:739
+#: src/vpn/gnunet-service-vpn.c:753
msgid "# ICMP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1095
+#: src/vpn/gnunet-service-vpn.c:1096
msgid "# UDP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1243
+#: src/vpn/gnunet-service-vpn.c:1255
msgid "# TCP packets received from cadet"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1439
+#: src/vpn/gnunet-service-vpn.c:1467
#, fuzzy
msgid "# Cadet channels created"
msgstr ""
"\n"
"按任意键继续\n"
-#: src/vpn/gnunet-service-vpn.c:1658
+#: src/vpn/gnunet-service-vpn.c:1687
#, c-format
msgid "Protocol %u not supported, dropping\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1792
+#: src/vpn/gnunet-service-vpn.c:1826
msgid "# Packets dropped (channel not yet online)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:1982
+#: src/vpn/gnunet-service-vpn.c:2006
msgid "# ICMPv4 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2005
+#: src/vpn/gnunet-service-vpn.c:2027
msgid "# ICMPv6 packets dropped (not allowed)"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2225
+#: src/vpn/gnunet-service-vpn.c:2235
msgid "# Packets received from TUN interface"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2259 src/vpn/gnunet-service-vpn.c:2290
+#: src/vpn/gnunet-service-vpn.c:2268 src/vpn/gnunet-service-vpn.c:2304
#, c-format
msgid "Packet received for unmapped destination `%s' (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2297
+#: src/vpn/gnunet-service-vpn.c:2314
msgid "Received IPv4 packet with options (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2312
+#: src/vpn/gnunet-service-vpn.c:2328
#, c-format
msgid "Received packet of unknown protocol %d from TUN (dropping it)\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2352
+#: src/vpn/gnunet-service-vpn.c:2367
msgid "Failed to find unallocated IPv4 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2403
+#: src/vpn/gnunet-service-vpn.c:2422
msgid "Failed to find unallocated IPv6 address in VPN's range\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2436 src/vpn/gnunet-service-vpn.c:2639
+#: src/vpn/gnunet-service-vpn.c:2464 src/vpn/gnunet-service-vpn.c:2686
msgid "# Active destinations"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2684
+#: src/vpn/gnunet-service-vpn.c:2735
msgid "Failed to allocate IP address for new destination\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2942
+#: src/vpn/gnunet-service-vpn.c:2998
#, fuzzy
msgid "Must specify valid IPv6 address"
msgstr "“%s”不可用。\n"
-#: src/vpn/gnunet-service-vpn.c:2969
+#: src/vpn/gnunet-service-vpn.c:3022
msgid "Must specify valid IPv6 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2978
+#: src/vpn/gnunet-service-vpn.c:3030
msgid "IPv6 support disabled as this system does not support IPv6\n"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:2994
+#: src/vpn/gnunet-service-vpn.c:3043
#, fuzzy
msgid "Must specify valid IPv4 address"
msgstr "“%s”不可用。\n"
-#: src/vpn/gnunet-service-vpn.c:3010
+#: src/vpn/gnunet-service-vpn.c:3056
msgid "Must specify valid IPv4 mask"
msgstr ""
-#: src/vpn/gnunet-service-vpn.c:3021
+#: src/vpn/gnunet-service-vpn.c:3066
msgid "IPv4 support disabled as this system does not support IPv4\n"
msgstr ""
msgid "Setup tunnels via VPN."
msgstr ""
-#: src/zonemaster/gnunet-service-zonemaster.c:838
#: src/zonemaster/gnunet-service-zonemaster-monitor.c:416
+#: src/zonemaster/gnunet-service-zonemaster.c:838
#, fuzzy
msgid "Failed to connect to the namestore!\n"
msgstr "初始化“%s”服务失败。\n"
-#: src/include/gnunet_common.h:865 src/include/gnunet_common.h:883
-#: src/include/gnunet_common.h:905
+#: src/include/gnunet_common.h:772 src/include/gnunet_common.h:779
+#: src/include/gnunet_common.h:789
#, fuzzy, c-format
msgid "Assertion failed at %s:%d. Aborting.\n"
msgstr "对驱动器“%2$s”的“%1$s”操作失败:%3$u\n"
-#: src/include/gnunet_common.h:924
+#: src/include/gnunet_common.h:797
#, c-format
msgid "Assertion failed at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:946
+#: src/include/gnunet_common.h:809
#, c-format
msgid "External protocol violation detected at %s:%d.\n"
msgstr ""
-#: src/include/gnunet_common.h:1000 src/include/gnunet_common.h:1020
+#: src/include/gnunet_common.h:836 src/include/gnunet_common.h:845
#, c-format
msgid "`%s' failed on file `%s' at %s:%d with error: %s\n"
msgstr ""
#, fuzzy
-#~ msgid "# XT sessions active"
-#~ msgstr ""
-#~ "\n"
-#~ "按任意键继续\n"
+#~ msgid "Can not index file `%s': %s.\n"
+#~ msgstr "找不到接口“%s”的一个 IP 地址。\n"
#, fuzzy
-#~ msgid "Failed to bind XU socket to %s: %s\n"
-#~ msgstr "打开日志文件“%s”失败:%s\n"
+#~ msgid "`%s' is not a valid domain name\n"
+#~ msgstr "“%s”不可用。\n"
#, fuzzy
-#~ msgid "Failed to open XU sockets\n"
-#~ msgstr "打开日志文件“%s”失败:%s\n"
+#~ msgid "Unable to parse CAA record string `%s'\n"
+#~ msgstr "解析配置文件“%s”失败\n"
#, fuzzy
-#~ msgid "Failed to create XU network sockets\n"
-#~ msgstr "发送消息失败。\n"
+#~ msgid "display private keys as well"
+#~ msgstr "显示一个文件的散列值"
#, fuzzy
-#~ msgid "Print information about DV state"
-#~ msgstr "æ\97 æ³\95è\8e·å\8f\96æ\9c\89å\85³ç\94¨æ\88·â\80\9c%sâ\80\9dç\9a\84ä¿¡æ\81¯ï¼\9a%s\n"
+#~ msgid "The EGO to use"
+#~ msgstr "æ¶\88æ\81¯å°ºå¯¸"
#, fuzzy
#~ msgid "Invalid tunnel owner `%s'\n"
#~ msgid "Provide information about a particular tunnel"
#~ msgstr "无法获取有关用户“%s”的信息:%s\n"
-#, fuzzy
-#~ msgid "Failed to store membership information!\n"
-#~ msgstr "打开日志文件“%s”失败:%s\n"
-
-#, fuzzy
-#~ msgid "Failed to test membership!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Dropping invalid fragment\n"
-#~ msgstr "“%s”的参数无效。\n"
-
-#, fuzzy
-#~ msgid "Failed to store fragment\n"
-#~ msgstr "运行 %s失败:%s %d\n"
-
-#, fuzzy
-#~ msgid "Failed to get fragment!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to get message!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to get message fragment!\n"
-#~ msgstr "打开日志文件“%s”失败:%s\n"
-
-#, fuzzy
-#~ msgid "Failed to get master counters!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to begin modifying state: %d\n"
-#~ msgstr "运行 %s失败:%s %d\n"
-
-#, fuzzy
-#~ msgid "Failed to modify state: %d\n"
-#~ msgstr "运行 %s失败:%s %d\n"
-
-#, fuzzy
-#~ msgid "Failed to end modifying state!\n"
-#~ msgstr "运行 %s失败:%s %d\n"
-
-#, fuzzy
-#~ msgid "Failed to begin synchronizing state!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to end synchronizing state!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to reset state!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Failed to get state variable!\n"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "Unable to initialize Mysql.\n"
-#~ msgstr "无法初始化 SQLite:%s。\n"
-
-#, fuzzy
-#~ msgid "Failed to run SQL statement `%s'\n"
-#~ msgstr "解析配置文件“%s”失败\n"
-
-#, fuzzy
-#~ msgid "`%s' failed at %s:%d with error: %s (%d)\n"
-#~ msgstr "“%s”于 %s:%d 处失败,错误为:%s\n"
-
-#, fuzzy
-#~ msgid "SQLite database running\n"
-#~ msgstr "sqlite 数据仓库"
-
-#, fuzzy
-#~ msgid "--place missing or invalid.\n"
-#~ msgstr "“%s”的参数无效。\n"
-
-#, fuzzy
-#~ msgid "name or public key of ego"
-#~ msgstr "“%s”的参数无效。\n"
-
-#, fuzzy
-#~ msgid "wait for incoming messages"
-#~ msgstr "发送消息失败。\n"
-
-#, fuzzy
-#~ msgid "number of messages to replay from history"
-#~ msgstr "每次迭代所使用的消息数量"
-
#~ msgid "Could not resolve `%s' (%s): %s\n"
#~ msgstr "无法解析“%s”(%s):%s\n"
#, fuzzy
#~ msgid ""
-#~ "%s service is lacking key configuration settings (%s). Using default "
-#~ "(%u).\n"
+#~ "%s service is lacking key configuration settings (%s). Using default (%"
+#~ "u).\n"
#~ msgstr "立即保存配置?"
#, fuzzy
pkgcfg_DATA = \
arm.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
libexecdir= $(pkglibdir)/libexec/
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
bin_PROGRAMS = \
- gnunet-ats
+ gnunet-ats
gnunet_ats_SOURCES = \
- gnunet-ats.c
+ gnunet-ats.c
gnunet_ats_LDADD = \
$(top_builddir)/src/util/libgnunetutil.la \
$(top_builddir)/src/ats/libgnunetats.la \
$(top_builddir)/src/nt/libgnunetnt.la \
$(top_builddir)/src/transport/libgnunettransport.la \
$(top_builddir)/src/hello/libgnunethello.la \
- $(GN_LIBINTL)
+ $(GN_LIBINTL)
pkgcfg_DATA = \
ats.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
pkgcfg_DATA = \
auction.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
plugindir = $(libdir)/gnunet
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
cadet_api_get_path.c \
cadet_api_list_peers.c \
cadet_api_list_tunnels.c \
- cadet_api_helper.c
+ cadet_api_helper.c
libgnunetcadet_la_LIBADD = \
$(top_builddir)/src/util/libgnunetutil.la \
$(XLIB) \
pkgcfg_DATA = \
consensus.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
plugindir = $(libdir)/gnunet
-if MINGW
- WINFLAGS = -no-undefined -Wl,--export-all-symbols
-endif
-
AM_CPPFLAGS = \
$(GNUNET_CPPFLAGS) \
-I$(top_srcdir)/src/include \
#include <gst/app/gstappsink.h>
// sockets
-#ifndef MINGW
#if HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netdb.h>
-#endif
#include <sys/types.h>
#include <fcntl.h>
pkgcfg_DATA = \
core.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
dist_pkgcfg_DATA = \
datacache.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
pkgcfg_DATA = \
datastore.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols -lole32 -lshell32 -liconv -lstdc++ -lcomdlg32 -lgdi32
-endif
plugindir = $(libdir)/gnunet
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined,--export-all-symbols
- EXITBIN = gnunet-helper-exit
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
endif
gnunet-daemon-exit \
$(EXITBIN)
-if MINGW
- gnunet_helper_exit_LDFLAGS = \
- -no-undefined -Wl,--export-all-symbols
- gnunet_helper_exit_LDADD = \
- -lsetupapi -lnewdev -lshell32 -liconv -lstdc++ \
- -lcomdlg32 -lgdi32 -liphlpapi
+gnunet_helper_exit_SOURCES = \
+ gnunet-helper-exit.c
- gnunet_helper_exit_SOURCES = \
- gnunet-helper-exit-windows.c
-else
- gnunet_helper_exit_SOURCES = \
- gnunet-helper-exit.c
-endif
gnunet_daemon_exit_SOURCES = \
gnunet-daemon-exit.c exit.h
gnunet_daemon_exit_LDADD = \
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2010, 2012 Christian Grothoff
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file exit/gnunet-helper-exit-windows.c
- * @brief the helper for the EXIT service in win32 builds.
- * Opens a virtual network-interface, sends data received on the if to stdout,
- * sends data received on stdin to the interface
- * @author Christian M. Fuchs
- *
- * The following list of people have reviewed this code and considered
- * it safe since the last modification (if you reviewed it, please
- * have your name added to the list):
- *
- */
-
-#include <stdio.h>
-#include <Winsock2.h>
-#include <windows.h>
-#include <setupapi.h>
-#ifndef __MINGW64_VERSION_MAJOR
-#include <ddk/cfgmgr32.h>
-#include <ddk/newdev.h>
-#else
-#include <cfgmgr32.h>
-#include <newdev.h>
-#endif
-#include <time.h>
-#include "platform.h"
-#include "tap-windows.h"
-/**
- * Need 'struct GNUNET_HashCode' and 'struct GNUNET_PeerIdentity'.
- */
-#include "gnunet_crypto_lib.h"
-/**
- * Need 'struct GNUNET_MessageHeader'.
- */
-#include "gnunet_common.h"
-
-/**
- * Need VPN message types.
- */
-#include "gnunet_protocols.h"
-
-/**
- * Should we print (interesting|debug) messages that can happen during
- * normal operation?
- */
-#define DEBUG GNUNET_NO
-
-#if DEBUG
-/* FIXME: define with varargs... */
-#define LOG_DEBUG(msg) fprintf(stderr, "%s", msg);
-#else
-#define LOG_DEBUG(msg) do {} while (0)
-#endif
-
-/**
- * Will this binary be run in permissions testing mode?
- */
-static boolean privilege_testing = FALSE;
-
-/**
- * Maximum size of a GNUnet message (GNUNET_MAX_MESSAGE_SIZE)
- */
-#define MAX_SIZE 65536
-
-/**
- * Name or Path+Name of our win32 driver.
- * The .sys and .cat files HAVE to be in the same location as this file!
- */
-#define INF_FILE "share/gnunet/openvpn-tap32/tapw32/OemWin2k.inf"
-
-/**
- * Name or Path+Name of our win64 driver.
- * The .sys and .cat files HAVE to be in the same location as this file!
- */
-#define INF_FILE64 "share/gnunet/openvpn-tap32/tapw64/OemWin2k.inf"
-
-/**
- * Hardware ID used in the inf-file.
- * This might change over time, as openvpn advances their driver
- */
-#define HARDWARE_ID "tap0901"
-
-/**
- * Minimum major-id of the driver version we can work with
- */
-#define TAP_WIN_MIN_MAJOR 9
-
-/**
- * Minimum minor-id of the driver version we can work with.
- * v <= 7 has buggy IPv6.
- * v == 8 is broken for small IPv4 Packets
- */
-#define TAP_WIN_MIN_MINOR 9
-
-/**
- * Time in seconds to wait for our virtual device to go up after telling it to do so.
- *
- * openvpn doesn't specify a value, 4 seems sane for testing, even for openwrt
- * (in fact, 4 was chosen by a fair dice roll...)
- */
-#define TAP32_POSTUP_WAITTIME 4
-
-/**
- * Location of the network interface list resides in registry.
- */
-#define INTERFACE_REGISTRY_LOCATION "SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}"
-
-/**
- * Our local process' PID. Used for creating a sufficiently unique additional
- * hardware ID for our device.
- */
-static char secondary_hwid[LINE_LEN / 2];
-
-/**
- * Device's visible Name, used to identify a network device in netsh.
- * eg: "Local Area Connection 9"
- */
-static char device_visible_name[256];
-
-/**
- * This is our own local instance of a virtual network interface
- * It is (somewhat) equivalent to using tun/tap in unixoid systems
- *
- * Upon initialization, we create such an device node.
- * Upon termination, we remove it again.
- *
- * If we crash this device might stay around.
- */
-static HDEVINFO DeviceInfo = INVALID_HANDLE_VALUE;
-
-/**
- * Registry Key we hand over to windows to spawn a new virtual interface
- */
-static SP_DEVINFO_DATA DeviceNode;
-
-/**
- * GUID of our virtual device in the form of
- * {12345678-1234-1234-1234-123456789abc} - in hex
- */
-static char device_guid[256];
-
-
-/**
- * Possible states of an IO facility.
- */
-enum IO_State {
- /**
- * overlapped I/O is ready for work
- */
- IOSTATE_READY = 0,
-
- /**
- * overlapped I/O has been queued
- */
- IOSTATE_QUEUED,
-
- /**
- * overlapped I/O has finished, but is waiting for it's write-partner
- */
- IOSTATE_WAITING,
-
- /**
- * there is a full buffer waiting
- */
- IOSTATE_RESUME,
-
- /**
- * Operlapped IO states for facility objects
- * overlapped I/O has failed, stop processing
- */
- IOSTATE_FAILED
-};
-
-
-/**
- * A IO Object + read/writebuffer + buffer-size for windows asynchronous IO handling
- */
-struct io_facility {
- /**
- * The mode the state machine associated with this object is in.
- */
- enum IO_State facility_state;
-
- /**
- * If the path is open or blocked in general (used for quickly checking)
- */
- BOOL path_open; // BOOL is winbool (int), NOT boolean (unsigned char)!
-
- /**
- * Windows Object-Handle (used for accessing TAP and STDIN/STDOUT)
- */
- HANDLE handle;
-
- /**
- * Overlaped IO structure used for asynchronous IO in windows.
- */
- OVERLAPPED overlapped;
-
- /**
- * Buffer for reading things to and writing from...
- */
- unsigned char buffer[MAX_SIZE];
-
- /**
- * How much of this buffer was used when reading or how much data can be written
- */
- DWORD buffer_size;
-
- /**
- * Amount of data actually written or read by readfile/writefile.
- */
- DWORD buffer_size_processed;
-
- /**
- * How much of this buffer we have written in total
- */
- DWORD buffer_size_written;
-};
-
-/**
- * ReOpenFile is only available as of XP SP2 and 2003 SP1
- */
-WINBASEAPI HANDLE WINAPI ReOpenFile(HANDLE, DWORD, DWORD, DWORD);
-
-/**
- * IsWow64Process definition for our is_win64, as this is a kernel function
- */
-typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS)(HANDLE, PBOOL);
-
-
-/**
- * Like strlcpy but portable. The given string @a src is copied until its null
- * byte or until @a n - 1 bytes have been read. The destination buffer is
- * guaranteed to be null-terminated.
- *
- * @param dst destination of the copy (must be @a n bytes long)
- * @param src source of the copy (at most @a n - 1 bytes will be read)
- * @param n the length of the string to copy, including its terminating null
- * byte
- * @return the length of the string that was copied, excluding the terminating
- * null byte
- */
-size_t
-GNUNET_strlcpy(char *dst, const char *src, size_t n)
-{
- size_t ret;
- size_t slen;
-
- GNUNET_assert(0 != n);
- slen = strnlen(src, n - 1);
- memcpy(dst, src, slen);
- dst[slen] = '\0';
- return slen;
-}
-
-
-/**
- * Determines if the host OS is win32 or win64
- *
- * @return true if
- */
-BOOL
-is_win64()
-{
-#if defined(_WIN64)
- //this is a win64 binary,
- return TRUE;
-#elif defined(_WIN32)
- //this is a 32bit binary, and we need to check if we are running in WOW64
- BOOL success = FALSE;
- BOOL on_wow64 = FALSE;
- LPFN_ISWOW64PROCESS IsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandle("kernel32"), "IsWow64Process");
-
- if (NULL != IsWow64Process)
- success = IsWow64Process(GetCurrentProcess(), &on_wow64);
-
- return success && on_wow64;
-#endif
-}
-/**
- * Wrapper for executing a shellcommand in windows.
- *
- * @param command - the command + parameters to execute
- * @return * exitcode of the program executed,
- * * EINVAL (cmd/file not found)
- * * EPIPE (could not read STDOUT)
- */
-static int
-execute_shellcommand(const char *command)
-{
- FILE *pipe;
-
- if ((NULL == command) ||
- (NULL == (pipe = _popen(command, "rt"))))
- return EINVAL;
-
-#if DEBUG
- fprintf(stderr, "DEBUG: Command output: \n");
- char output[LINE_LEN];
- while (NULL != fgets(output, sizeof(output), pipe))
- fprintf(stderr, "%s", output);
-#endif
-
- return _pclose(pipe);
-}
-
-
-/**
- * @brief Sets the IPv6-Address given in address on the interface dev
- *
- * @param address the IPv6-Address
- * @param prefix_len the length of the network-prefix
- */
-static int
-set_address6(const char *address, unsigned long prefix_len)
-{
- int ret = EINVAL;
- char command[LINE_LEN];
- struct sockaddr_in6 sa6;
-
- /*
- * parse the new address
- */
- memset(&sa6, 0, sizeof(struct sockaddr_in6));
- sa6.sin6_family = AF_INET6;
- if (1 != inet_pton(AF_INET6, address, &sa6.sin6_addr.s6_addr))
- {
- fprintf(stderr, "ERROR: Failed to parse address `%s': %s\n", address,
- strerror(errno));
- return -1;
- }
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 add address \"%s\" %s/%d store=active",
- device_visible_name, address, prefix_len);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: Setting IPv6 address failed: %s\n", strerror(ret));
- return ret;
-}
-
-
-/**
- * @brief Removes the IPv6-Address given in address from the interface dev
- *
- * @param address the IPv4-Address
- */
-static void
-remove_address6(const char *address)
-{
- char command[LINE_LEN];
- int ret = EINVAL;
-
- // sanity checking was already done in set_address6
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 delete address \"%s\" store=persistent",
- device_visible_name);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: removing IPv6 address failed: %s\n", strerror(ret));
-}
-
-
-/**
- * @brief Sets the IPv4-Address given in address on the interface dev
- *
- * @param address the IPv4-Address
- * @param mask the netmask
- */
-static int
-set_address4(const char *address, const char *mask)
-{
- int ret = EINVAL;
- char command[LINE_LEN];
-
- struct sockaddr_in addr;
-
- addr.sin_family = AF_INET;
-
- /*
- * Parse the address
- */
- if (1 != inet_pton(AF_INET, address, &addr.sin_addr.s_addr))
- {
- fprintf(stderr, "ERROR: Failed to parse address `%s': %s\n", address,
- strerror(errno));
- return -1;
- }
- // Set Device to Subnet-Mode?
- // do we really need tun.c:2925 ?
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv4 add address \"%s\" %s %s store=active",
- device_visible_name, address, mask);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: Setting IPv4 address failed: %s\n", strerror(ret));
- return ret;
-}
-
-
-/**
- * @brief Removes the IPv4-Address given in address from the interface dev
- *
- * @param address the IPv4-Address
- */
-static void
-remove_address4(const char *address)
-{
- char command[LINE_LEN];
- int ret = EINVAL;
-
- // sanity checking was already done in set_address4
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv4 delete address \"%s\" gateway=all store=persistent",
- device_visible_name);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: removing IPv4 address failed: %s\n", strerror(ret));
-}
-
-
-/**
- * Setup a new virtual interface to use for tunneling.
- *
- * @return: TRUE if setup was successful, else FALSE
- */
-static BOOL
-setup_interface()
-{
- /*
- * where to find our inf-file. (+ the "full" path, after windows found")
- *
- * We do not directly input all the props here, because openvpn will update
- * these details over time.
- */
- char inf_file_path[MAX_PATH];
- char * temp_inf_filename;
- char hwidlist[LINE_LEN + 4];
- char class_name[128];
- GUID class_guid;
- int str_length = 0;
-
- /**
- * Set the device's hardware ID and add it to a list.
- * This information will later on identify this device in registry.
- */
- str_length = GNUNET_strlcpy(hwidlist,
- HARDWARE_ID,
- sizeof(hwidlist)) + 1;
- /**
- * this is kind of over-complicated, but allows keeps things independent of
- * how the openvpn-hwid is actually stored.
- *
- * A HWID list is double-\0 terminated and \0 separated
- */
- str_length = strlen(hwidlist) + 1;
- str_length += GNUNET_strlcpy(&hwidlist[str_length],
- secondary_hwid,
- sizeof(hwidlist) - str_length) + 1;
- GNUNET_assert(str_length < sizeof(hwidlist));
- hwidlist[str_length] = '\0';
- ++str_length;
-
- /**
- * Locate the inf-file, we need to store it somewhere where the system can
- * find it. We need to pick the correct driver for win32/win64.
- */
- if (is_win64())
- GetFullPathNameA(INF_FILE64, MAX_PATH, inf_file_path, &temp_inf_filename);
- else
- GetFullPathNameA(INF_FILE, MAX_PATH, inf_file_path, &temp_inf_filename);
-
- fprintf(stderr, "INFO: Located our driver's .inf file at %s\n", inf_file_path);
- /**
- * Bootstrap our device info using the drivers inf-file
- */
- if (!SetupDiGetINFClassA(inf_file_path,
- &class_guid,
- class_name, sizeof(class_name) / sizeof(char),
- NULL))
- return FALSE;
-
- /**
- * Collect all the other needed information...
- * let the system fill our this form
- */
- DeviceInfo = SetupDiCreateDeviceInfoList(&class_guid, NULL);
- if (DeviceInfo == INVALID_HANDLE_VALUE)
- return FALSE;
-
- DeviceNode.cbSize = sizeof(SP_DEVINFO_DATA);
- if (!SetupDiCreateDeviceInfoA(DeviceInfo,
- class_name,
- &class_guid,
- NULL,
- 0,
- DICD_GENERATE_ID,
- &DeviceNode))
- return FALSE;
-
- /* Deploy all the information collected into the registry */
- if (!SetupDiSetDeviceRegistryPropertyA(DeviceInfo,
- &DeviceNode,
- SPDRP_HARDWAREID,
- (LPBYTE)hwidlist,
- str_length * sizeof(char)))
- return FALSE;
-
- /* Install our new class(=device) into the system */
- if (!SetupDiCallClassInstaller(DIF_REGISTERDEVICE,
- DeviceInfo,
- &DeviceNode))
- return FALSE;
-
- /* This system call tends to take a while (several seconds!) on
- "modern" Windoze systems */
- if (!UpdateDriverForPlugAndPlayDevicesA(NULL,
- secondary_hwid,
- inf_file_path,
- INSTALLFLAG_FORCE | INSTALLFLAG_NONINTERACTIVE,
- NULL)) //reboot required? NEVER!
- return FALSE;
-
- fprintf(stderr, "DEBUG: successfully created a network device\n");
- return TRUE;
-}
-
-
-/**
- * Remove our new virtual interface to use for tunneling.
- * This function must be called AFTER setup_interface!
- *
- * @return: TRUE if destruction was successful, else FALSE
- */
-static BOOL
-remove_interface()
-{
- SP_REMOVEDEVICE_PARAMS remove;
-
- if (INVALID_HANDLE_VALUE == DeviceInfo)
- return FALSE;
-
- remove.ClassInstallHeader.cbSize = sizeof(SP_CLASSINSTALL_HEADER);
- remove.HwProfile = 0;
- remove.Scope = DI_REMOVEDEVICE_GLOBAL;
- remove.ClassInstallHeader.InstallFunction = DIF_REMOVE;
- /*
- * 1. Prepare our existing device information set, and place the
- * uninstall related information into the structure
- */
- if (!SetupDiSetClassInstallParamsA(DeviceInfo,
- (PSP_DEVINFO_DATA)&DeviceNode,
- &remove.ClassInstallHeader,
- sizeof(remove)))
- return FALSE;
- /*
- * 2. Uninstall the virtual interface using the class installer
- */
- if (!SetupDiCallClassInstaller(DIF_REMOVE,
- DeviceInfo,
- (PSP_DEVINFO_DATA)&DeviceNode))
- return FALSE;
-
- SetupDiDestroyDeviceInfoList(DeviceInfo);
-
- fprintf(stderr, "DEBUG: removed interface successfully\n");
-
- return TRUE;
-}
-
-
-/**
- * Do all the lookup necessary to retrieve the inteface's actual name
- * off the registry.
- *
- * @return: TRUE if we were able to lookup the interface's name, else FALSE
- */
-static BOOL
-resolve_interface_name()
-{
- SP_DEVINFO_LIST_DETAIL_DATA device_details;
- char pnp_instance_id [MAX_DEVICE_ID_LEN];
- HKEY adapter_key_handle;
- LONG status;
- DWORD len;
- int i = 0;
- int retrys;
- BOOL retval = FALSE;
- char adapter[] = INTERFACE_REGISTRY_LOCATION;
-
- /* We can obtain the PNP instance ID from our setupapi handle */
- device_details.cbSize = sizeof(device_details);
- if (CR_SUCCESS != CM_Get_Device_ID_ExA(DeviceNode.DevInst,
- (PCHAR)pnp_instance_id,
- MAX_DEVICE_ID_LEN,
- 0, //must be 0
- NULL)) //hMachine, we are local
- return FALSE;
-
- fprintf(stderr, "DEBUG: Resolving interface name for network device %s\n", pnp_instance_id);
-
- /* Registry is incredibly slow, retry for up to 30 seconds to allow registry to refresh */
- for (retrys = 0; retrys < 120 && !retval; retrys++)
- {
- /* sleep for 250ms*/
- Sleep(250);
-
- /* Now we can use this ID to locate the correct networks interface in registry */
- if (ERROR_SUCCESS != RegOpenKeyExA(
- HKEY_LOCAL_MACHINE,
- adapter,
- 0,
- KEY_READ,
- &adapter_key_handle))
- return FALSE;
-
- /* Of course there is a multitude of entries here, with arbitrary names,
- * thus we need to iterate through there.
- */
- while (!retval)
- {
- char instance_key[256];
- char query_key [256];
- HKEY instance_key_handle;
- char pnpinstanceid_name[] = "PnpInstanceID";
- char pnpinstanceid_value[256];
- char adaptername_name[] = "Name";
- DWORD data_type;
-
- len = 256 * sizeof(char);
- /* optain a subkey of {4D36E972-E325-11CE-BFC1-08002BE10318} */
- status = RegEnumKeyExA(
- adapter_key_handle,
- i,
- instance_key,
- &len,
- NULL,
- NULL,
- NULL,
- NULL);
-
- /* this may fail due to one of two reasons:
- * we are at the end of the list*/
- if (ERROR_NO_MORE_ITEMS == status)
- break;
- // * we found a broken registry key, continue with the next key.
- if (ERROR_SUCCESS != status)
- goto cleanup;
-
- /* prepare our new query string: */
- snprintf(query_key, 256, "%s\\%s\\Connection",
- adapter,
- instance_key);
-
- /* look inside instance_key\\Connection */
- if (ERROR_SUCCESS != RegOpenKeyExA(
- HKEY_LOCAL_MACHINE,
- query_key,
- 0,
- KEY_READ,
- &instance_key_handle))
- goto cleanup;
-
- /* now, read our PnpInstanceID */
- len = sizeof(pnpinstanceid_value);
- status = RegQueryValueExA(instance_key_handle,
- pnpinstanceid_name,
- NULL, //reserved, always NULL according to MSDN
- &data_type,
- (LPBYTE)pnpinstanceid_value,
- &len);
-
- if (status != ERROR_SUCCESS || data_type != REG_SZ)
- goto cleanup;
-
- /* compare the value we got to our devices PNPInstanceID*/
- if (0 != strncmp(pnpinstanceid_value, pnp_instance_id,
- sizeof(pnpinstanceid_value) / sizeof(char)))
- goto cleanup;
-
- len = sizeof(device_visible_name);
- status = RegQueryValueExA(
- instance_key_handle,
- adaptername_name,
- NULL, //reserved, always NULL according to MSDN
- &data_type,
- (LPBYTE)device_visible_name,
- &len);
-
- if (status != ERROR_SUCCESS || data_type != REG_SZ)
- goto cleanup;
-
- /*
- * we have successfully found OUR instance,
- * save the device GUID before exiting
- */
- GNUNET_strlcpy(device_guid, instance_key, sizeof(device_guid));
- retval = TRUE;
- fprintf(stderr, "DEBUG: Interface Name lookup succeeded on retry %d, got \"%s\" %s\n", retrys, device_visible_name, device_guid);
-
-cleanup:
- RegCloseKey(instance_key_handle);
-
- ++i;
- }
-
- RegCloseKey(adapter_key_handle);
- }
- return retval;
-}
-
-
-/**
- * Determines the version of the installed TAP32 driver and checks if it's sufficiently new for GNUNET
- *
- * @param handle the handle to our tap device
- * @return TRUE if the version is sufficient, else FALSE
- */
-static BOOL
-check_tapw32_version(HANDLE handle)
-{
- ULONG version[3];
- DWORD len;
-
- memset(&(version), 0, sizeof(version));
-
- if (DeviceIoControl(handle, TAP_WIN_IOCTL_GET_VERSION,
- &version, sizeof(version),
- &version, sizeof(version), &len, NULL))
- fprintf(stderr, "INFO: TAP-Windows Driver Version %d.%d %s\n",
- (int)version[0],
- (int)version[1],
- (version[2] ? "(DEBUG)" : ""));
-
- if ((version[0] != TAP_WIN_MIN_MAJOR) ||
- (version[1] < TAP_WIN_MIN_MINOR))
- {
- fprintf(stderr, "FATAL: This version of gnunet requires a TAP-Windows driver that is at least version %d.%d\n",
- TAP_WIN_MIN_MAJOR,
- TAP_WIN_MIN_MINOR);
- return FALSE;
- }
-
- return TRUE;
-}
-
-
-/**
- * Creates a tun-interface called dev;
- *
- * @return the fd to the tun or -1 on error
- */
-static HANDLE
-init_tun()
-{
- char device_path[256];
- HANDLE handle;
-
- if (!setup_interface())
- {
- errno = ENODEV;
- return INVALID_HANDLE_VALUE;
- }
-
- if (!resolve_interface_name())
- {
- errno = ENODEV;
- return INVALID_HANDLE_VALUE;
- }
-
- /* Open Windows TAP-Windows adapter */
- snprintf(device_path, sizeof(device_path), "%s%s%s",
- USERMODEDEVICEDIR,
- device_guid,
- TAP_WIN_SUFFIX);
-
- handle = CreateFile(
- device_path,
- GENERIC_READ | GENERIC_WRITE,
- 0, /* was: FILE_SHARE_READ */
- 0,
- OPEN_EXISTING,
- FILE_ATTRIBUTE_SYSTEM | FILE_FLAG_OVERLAPPED,
- 0
- );
-
- if (INVALID_HANDLE_VALUE == handle)
- {
- fprintf(stderr, "FATAL: CreateFile failed on TAP device: %s\n", device_path);
- return handle;
- }
-
- /* get driver version info */
- if (!check_tapw32_version(handle))
- {
- CloseHandle(handle);
- return INVALID_HANDLE_VALUE;
- }
-
- /* TODO (opt?): get MTU-Size */
-
- fprintf(stderr, "DEBUG: successfully opened TAP device\n");
- return handle;
-}
-
-
-/**
- * Brings a TAP device up and sets it to connected state.
- *
- * @param handle the handle to our TAP device
- * @return True if the operation succeeded, else false
- */
-static BOOL
-tun_up(HANDLE handle)
-{
- ULONG status = TRUE;
- DWORD len;
-
- if (!DeviceIoControl(handle, TAP_WIN_IOCTL_SET_MEDIA_STATUS,
- &status, sizeof(status),
- &status, sizeof(status), &len, NULL))
- {
- fprintf(stderr, "FATAL: TAP driver ignored request to UP interface (DeviceIoControl call)\n");
- return FALSE;
- }
-
- /* Wait for the device to go UP, might take some time. */
- Sleep(TAP32_POSTUP_WAITTIME * 1000);
- fprintf(stderr, "DEBUG: successfully set TAP device to UP\n");
-
- return TRUE;
-}
-
-
-/**
- * Attempts to read off an input facility (tap or named pipe) in overlapped mode.
- *
- * 1.
- * If the input facility is in IOSTATE_READY, it will issue a new read operation to the
- * input handle. Then it goes into IOSTATE_QUEUED state.
- * In case the read succeeded instantly the input facility enters 3.
- *
- * 2.
- * If the input facility is in IOSTATE_QUEUED state, it will check if the queued read has finished already.
- * If it has finished, go to state 3.
- * If it has failed, set IOSTATE_FAILED
- *
- * 3.
- * If the output facility is in state IOSTATE_READY, the read-buffer is copied to the output buffer.
- * The input facility enters state IOSTATE_READY
- * The output facility enters state IOSTATE_READY
- * If the output facility is in state IOSTATE_QUEUED, the input facility enters IOSTATE_WAITING
- *
- * IOSTATE_WAITING is reset by the output facility, once it has completed.
- *
- * @param input_facility input named pipe or file to work with.
- * @param output_facility output pipe or file to hand over data to.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_read_tap(struct io_facility * input_facility,
- struct io_facility * output_facility)
-{
- struct GNUNET_MessageHeader * hdr;
- unsigned short size;
-
- switch (input_facility->facility_state)
- {
- case IOSTATE_READY:
- {
- if (!ResetEvent(input_facility->overlapped.hEvent))
- {
- return FALSE;
- }
-
- input_facility->buffer_size = 0;
-
- /* Check how the task is handled */
- if (ReadFile(input_facility->handle,
- input_facility->buffer,
- sizeof(input_facility->buffer) - sizeof(struct GNUNET_MessageHeader),
- &input_facility->buffer_size,
- &input_facility->overlapped))
- { /* async event processed immediately*/
- /* reset event manually*/
- if (!SetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: tap read succeeded immediately\n");
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && (0 < input_facility->buffer_size))
- { /* hand over this buffers content and apply message header for gnunet */
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- }
- else if (0 < input_facility->buffer_size)
- /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err)
- { /* operation queued */
- input_facility->facility_state = IOSTATE_QUEUED;
- }
- else
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
-
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- // We are queued and should check if the read has finished
- case IOSTATE_QUEUED:
- {
- // there was an operation going on already, check if that has completed now.
-
- if (GetOverlappedResult(input_facility->handle,
- &input_facility->overlapped,
- &input_facility->buffer_size,
- FALSE))
- { /* successful return for a queued operation */
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: tap read succeeded delayed\n");
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && 0 < input_facility->buffer_size)
- { /* hand over this buffers content and apply message header for gnunet */
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (0 < input_facility->buffer_size)
- { /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- // TODO: shall we attempt to fill our buffer or should we wait for our write-partner to finish?
- }
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- case IOSTATE_RESUME:
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Attempts to read off an input facility (tap or named pipe) in overlapped mode.
- *
- * 1.
- * If the input facility is in IOSTATE_READY, it will issue a new read operation to the
- * input handle. Then it goes into IOSTATE_QUEUED state.
- * In case the read succeeded instantly the input facility enters 3.
- *
- * 2.
- * If the input facility is in IOSTATE_QUEUED state, it will check if the queued read has finished already.
- * If it has finished, go to state 3.
- * If it has failed, set IOSTATE_FAILED
- *
- * 3.
- * If the facility is finished with ready
- * The read-buffer is copied to the output buffer, except for the GNUNET_MessageHeader.
- * The input facility enters state IOSTATE_READY
- * The output facility enters state IOSTATE_READY
- * If the output facility is in state IOSTATE_QUEUED, the input facility enters IOSTATE_WAITING
- *
- * IOSTATE_WAITING is reset by the output facility, once it has completed.
- *
- * @param input_facility input named pipe or file to work with.
- * @param output_facility output pipe or file to hand over data to.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_read_stdin(struct io_facility * input_facility,
- struct io_facility * output_facility)
-{
- struct GNUNET_MessageHeader * hdr;
-
- switch (input_facility->facility_state)
- {
- case IOSTATE_READY:
- {
- input_facility->buffer_size = 0;
-
-partial_read_iostate_ready:
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- /* Check how the task is handled */
- if (ReadFile(input_facility->handle,
- input_facility->buffer + input_facility->buffer_size,
- sizeof(input_facility->buffer) - input_facility->buffer_size,
- &input_facility->buffer_size_processed,
- &input_facility->overlapped))
- { /* async event processed immediately*/
- hdr = (struct GNUNET_MessageHeader *)input_facility->buffer;
-
- /* reset event manually*/
- if (!SetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: stdin read succeeded immediately\n");
- input_facility->buffer_size += input_facility->buffer_size_processed;
-
- if (ntohs(hdr->type) != GNUNET_MESSAGE_TYPE_VPN_HELPER ||
- ntohs(hdr->size) > sizeof(input_facility->buffer))
- {
- fprintf(stderr, "WARNING: Protocol violation, got GNUnet Message type %h, size %h\n", ntohs(hdr->type), ntohs(hdr->size));
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
- }
- /* we got the a part of a packet */
- if (ntohs(hdr->size) > input_facility->buffer_size)
- goto partial_read_iostate_ready;
-
- /* have we read more than 0 bytes of payload? (sizeread > header)*/
- if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader) &&
- ((IOSTATE_READY == output_facility->facility_state) ||
- (IOSTATE_WAITING == output_facility->facility_state)))
- { /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- /* hand over this buffers content and strip gnunet message header */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- else /* we read nothing */
- input_facility->facility_state = IOSTATE_READY;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err) /* operation queued */
- input_facility->facility_state = IOSTATE_QUEUED;
- else
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
-
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- // We are queued and should check if the read has finished
- case IOSTATE_QUEUED:
- {
- // there was an operation going on already, check if that has completed now.
- if (GetOverlappedResult(input_facility->handle,
- &input_facility->overlapped,
- &input_facility->buffer_size_processed,
- FALSE))
- { /* successful return for a queued operation */
- hdr = (struct GNUNET_MessageHeader *)input_facility->buffer;
-
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: stdin read succeeded delayed\n");
- input_facility->buffer_size += input_facility->buffer_size_processed;
-
- if ((ntohs(hdr->type) != GNUNET_MESSAGE_TYPE_VPN_HELPER) ||
- (ntohs(hdr->size) > sizeof(input_facility->buffer)))
- {
- fprintf(stderr, "WARNING: Protocol violation, got GNUnet Message type %h, size %h\n", ntohs(hdr->type), ntohs(hdr->size));
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
- }
- /* we got the a part of a packet */
- if (ntohs(hdr->size) > input_facility->buffer_size)
- ;
- goto partial_read_iostate_ready;
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- { /* hand over this buffers content and strip gnunet message header */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- input_facility->facility_state = IOSTATE_WAITING;
- else
- input_facility->facility_state = IOSTATE_READY;
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- case IOSTATE_RESUME: /* Our buffer was filled already but our write facility was busy. */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Attempts to write to an output facility (tap or named pipe) in overlapped mode.
- *
- * TODO: high level description
- *
- * @param output_facility output pipe or file to hand over data to.
- * @param input_facility input named pipe or file to work with.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_write(struct io_facility * output_facility,
- struct io_facility * input_facility)
-{
- switch (output_facility->facility_state)
- {
- case IOSTATE_READY:
- output_facility->buffer_size_written = 0;
-
-continue_partial_write:
- if (!ResetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- /* Check how the task was handled */
- if (WriteFile(output_facility->handle,
- output_facility->buffer + output_facility->buffer_size_written,
- output_facility->buffer_size - output_facility->buffer_size_written,
- &output_facility->buffer_size_processed,
- &output_facility->overlapped))
- {/* async event processed immediately*/
- fprintf(stderr, "DEBUG: write succeeded immediately\n");
- output_facility->buffer_size_written += output_facility->buffer_size_processed;
-
- /* reset event manually*/
- if (!SetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- /* partial write */
- if (output_facility->buffer_size_written < output_facility->buffer_size)
- goto continue_partial_write;
-
- /* we are now waiting for our buffer to be filled*/
- output_facility->facility_state = IOSTATE_WAITING;
-
- /* we successfully wrote something and now need to reset our reader */
- if (IOSTATE_WAITING == input_facility->facility_state)
- input_facility->facility_state = IOSTATE_RESUME;
- else if (IOSTATE_FAILED == input_facility->facility_state)
- output_facility->path_open = FALSE;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err)
- { /* operation queued */
- output_facility->facility_state = IOSTATE_QUEUED;
- }
- else
- { /* error occurred, close this path */
- output_facility->path_open = FALSE;
- output_facility->facility_state = IOSTATE_FAILED;
- fprintf(stderr, "FATAL: Write to handle failed, exiting\n");
- }
- }
- return TRUE;
-
- case IOSTATE_QUEUED:
- // there was an operation going on already, check if that has completed now.
-
- if (GetOverlappedResult(output_facility->handle,
- &output_facility->overlapped,
- &output_facility->buffer_size_processed,
- FALSE))
- {/* successful return for a queued operation */
- if (!ResetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: write succeeded delayed\n");
- output_facility->buffer_size_written += output_facility->buffer_size_processed;
-
- /* partial write */
- if (output_facility->buffer_size_written < output_facility->buffer_size)
- goto continue_partial_write;
-
- /* we are now waiting for our buffer to be filled*/
- output_facility->facility_state = IOSTATE_WAITING;
-
- /* we successfully wrote something and now need to reset our reader */
- if (IOSTATE_WAITING == input_facility->facility_state)
- input_facility->facility_state = IOSTATE_RESUME;
- else if (IOSTATE_FAILED == input_facility->facility_state)
- output_facility->path_open = FALSE;
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, close this path */
- output_facility->path_open = FALSE;
- output_facility->facility_state = IOSTATE_FAILED;
- fprintf(stderr, "FATAL: Write to handle failed, exiting\n");
- }
- }
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Initialize a overlapped structure
- *
- * @param elem the element to initilize
- * @param initial_state the initial state for this instance
- * @param signaled if the hEvent created should default to signaled or not
- * @return true on success, else false
- */
-static BOOL
-initialize_io_facility(struct io_facility * elem,
- int initial_state,
- BOOL signaled)
-{
- elem->path_open = TRUE;
- elem->handle = INVALID_HANDLE_VALUE;
- elem->facility_state = initial_state;
- elem->buffer_size = 0;
- elem->overlapped.hEvent = CreateEvent(NULL, TRUE, signaled, NULL);
- if (NULL == elem->overlapped.hEvent)
- return FALSE;
-
- return TRUE;
-}
-
-
-/**
- * Start forwarding to and from the tunnel.
- *
- * @param tap_handle device handle for interacting with the Virtual interface
- */
-static void
-run(HANDLE tap_handle)
-{
- /* IO-Facility for reading from our virtual interface */
- struct io_facility tap_read;
- /* IO-Facility for writing to our virtual interface */
- struct io_facility tap_write;
- /* IO-Facility for reading from stdin */
- struct io_facility std_in;
- /* IO-Facility for writing to stdout */
- struct io_facility std_out;
-
- HANDLE parent_std_in_handle = GetStdHandle(STD_INPUT_HANDLE);
- HANDLE parent_std_out_handle = GetStdHandle(STD_OUTPUT_HANDLE);
-
- /* tun up: */
- /* we do this HERE and not beforehand (in init_tun()), in contrast to openvpn
- * to remove the need to flush the arp cache, handle DHCP and wrong IPs.
- *
- * DHCP and such are all features we will never use in gnunet afaik.
- * But for openvpn those are essential.
- */
- if ((privilege_testing) || (!tun_up(tap_handle)))
- goto teardown_final;
-
- /* Initialize our overlapped IO structures*/
- if (!(initialize_io_facility(&tap_read, IOSTATE_READY, FALSE)
- && initialize_io_facility(&tap_write, IOSTATE_WAITING, TRUE)
- && initialize_io_facility(&std_in, IOSTATE_READY, FALSE)
- && initialize_io_facility(&std_out, IOSTATE_WAITING, TRUE)))
- goto teardown_final;
-
- /* Handles for STDIN and STDOUT */
- tap_read.handle = tap_handle;
- tap_write.handle = tap_handle;
-
-#ifdef DEBUG_TO_CONSOLE
- /* Debug output to console STDIN/STDOUT*/
- std_in.handle = parent_std_in_handle;
- std_out.handle = parent_std_out_handle;
-#else
- fprintf(stderr, "DEBUG: reopening stdin/out for overlapped IO\n");
- /*
- * Find out the types of our handles.
- * This part is a problem, because in windows we need to handle files,
- * pipes and the console differently.
- */
- if ((FILE_TYPE_PIPE != GetFileType(parent_std_in_handle)) ||
- (FILE_TYPE_PIPE != GetFileType(parent_std_out_handle)))
- {
- fprintf(stderr, "ERROR: stdin/stdout must be named pipes\n");
- goto teardown;
- }
-
- std_in.handle = ReOpenFile(parent_std_in_handle,
- GENERIC_READ,
- FILE_SHARE_WRITE | FILE_SHARE_READ,
- FILE_FLAG_OVERLAPPED);
-
- if (INVALID_HANDLE_VALUE == std_in.handle)
- {
- fprintf(stderr, "FATAL: Could not reopen stdin for in overlapped mode, has to be a named pipe\n");
- goto teardown;
- }
-
- std_out.handle = ReOpenFile(parent_std_out_handle,
- GENERIC_WRITE,
- FILE_SHARE_READ,
- FILE_FLAG_OVERLAPPED);
-
- if (INVALID_HANDLE_VALUE == std_out.handle)
- {
- fprintf(stderr, "FATAL: Could not reopen stdout for in overlapped mode, has to be a named pipe\n");
- goto teardown;
- }
-#endif
-
- fprintf(stderr, "DEBUG: mainloop has begun\n");
-
- while (std_out.path_open || tap_write.path_open)
- {
- /* perform READ from stdin if possible */
- if (std_in.path_open && (!attempt_read_stdin(&std_in, &tap_write)))
- break;
-
- /* perform READ from tap if possible */
- if (tap_read.path_open && (!attempt_read_tap(&tap_read, &std_out)))
- break;
-
- /* perform WRITE to tap if possible */
- if (tap_write.path_open && (!attempt_write(&tap_write, &std_in)))
- break;
-
- /* perform WRITE to STDOUT if possible */
- if (std_out.path_open && (!attempt_write(&std_out, &tap_read)))
- break;
- }
- fprintf(stderr, "DEBUG: teardown initiated\n");
-
-teardown:
-
- CancelIo(tap_handle);
- CancelIo(std_in.handle);
- CancelIo(std_out.handle);
-
-teardown_final:
-
- CloseHandle(tap_handle);
-}
-
-
-/**
- * Open VPN tunnel interface.
- *
- * @param argc must be 6
- * @param argv 0: binary name ("gnunet-helper-exit")
- * 1: tunnel interface name ("gnunet-exit")
- * 2: IPv4 "physical" interface name ("eth0"), or "-" to not do IPv4 NAT
- * 3: IPv6 address ("::1"), or "-" to skip IPv6
- * 4: IPv6 netmask length in bits ("64") [ignored if #4 is "-"]
- * 5: IPv4 address ("1.2.3.4"), or "-" to skip IPv4
- * 6: IPv4 netmask ("255.255.0.0") [ignored if #4 is "-"]
- */
-int
-main(int argc, char **argv)
-{
- char hwid[LINE_LEN];
- HANDLE handle;
- int global_ret = 1;
- int local_ret = EINVAL;
- BOOL have_ip4 = FALSE;
- BOOL have_ip6 = FALSE;
- BOOL have_nat44 = FALSE;
-
- if ((1 < argc) && (0 != strcmp(argv[1], "-d")))
- {
- privilege_testing = TRUE;
- fprintf(stderr,
- "%s",
- "DEBUG: Running binary in privilege testing mode.");
- argv++;
- argc--;
- }
-
- if (6 != argc)
- {
- fprintf(stderr,
- "%s",
- "FATAL: must supply 6 arguments\nUsage:\ngnunet-helper-exit [-d] <if name prefix> <uplink-interface name> <address6 or \"-\"> <netbits6> <address4 or \"-\"> <netmask4>\n");
- return 1;
- }
-
- GNUNET_strlcpy(hwid, argv[1], sizeof(hwid));
-
- /*
- * We use our PID for finding/resolving the control-panel name of our virtual
- * device. PIDs are (of course) unique at runtime, thus we can safely use it
- * as additional hardware-id for our device.
- */
- snprintf(secondary_hwid, LINE_LEN / 2, "%s-%d",
- hwid,
- _getpid());
-
- if (INVALID_HANDLE_VALUE == (handle = init_tun()))
- {
- fprintf(stderr, "FATAL: could not initialize virtual-interface %s with IPv6 %s/%s and IPv4 %s/%s\n",
- hwid,
- argv[3],
- argv[4],
- argv[5],
- argv[6]);
- global_ret = -1;
- goto cleanup;
- }
-
- fprintf(stderr, "DEBUG: Setting IPs, if needed\n");
- if (0 != strcmp(argv[3], "-"))
- {
- char command[LINE_LEN];
- const char *address = argv[3];
- long prefix_len = atol(argv[4]);
-
- if ((prefix_len < 1) || (prefix_len > 127))
- {
- fprintf(stderr, "FATAL: ipv6 prefix_len out of range\n");
- global_ret = -1;
- goto cleanup;
- }
-
- fprintf(stderr, "DEBUG: Setting IP6 address: %s/%d\n", address, prefix_len);
- if (0 != (global_ret = set_address6(address, prefix_len)))
- goto cleanup;
-
- have_ip6 = TRUE;
-
- /* install our the windows NAT module*/
- fprintf(stderr, "DEBUG: Setting IPv6 Forwarding for internal and external interface.\n");
- /* outside interface (maybe that's already set) */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 set interface interface=\"%s\" metric=1 forwarding=enabled store=active",
- argv[2]);
- local_ret = execute_shellcommand(command);
- if (0 != local_ret)
- {
- fprintf(stderr, "FATAL: Could not enable forwarding via netsh: %s\n", strerror(local_ret));
- goto cleanup;
- }
- /* internal interface */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 set interface interface=\"%s\" metric=1 forwarding=enabled advertise=enabled store=active",
- device_visible_name);
- local_ret = execute_shellcommand(command);
- if (0 != local_ret)
- {
- fprintf(stderr, "FATAL: Could not enable forwarding via netsh: %s\n", strerror(local_ret));
- goto cleanup;
- }
- /* we can keep IPv6 forwarding around, as all interfaces have
- * their forwarding mode reset to false at bootup. */
- }
-
- if (0 != strcmp(argv[5], "-"))
- {
- const char *address = argv[5];
- const char *mask = argv[6];
-
- fprintf(stderr, "DEBUG: Setting IP4 address: %s/%s\n", address, mask);
- if (0 != (global_ret = set_address4(address, mask)))
- goto cleanup;
-
- // setup NAPT, if possible
- /* MS has REMOVED the routing/nat capabilities from Vista+, thus
- * we can not setup NAT like in XP or on the server. Actually the
- * the only feasible solution seems to be to use
- * Internet Connection Sharing, which introduces a horde of problems
- * such as sending out rogue-RAs on the external interface in an ipv6
- * network.
- * Thus, below stuff ONLY works on
- * WinXP SP3
- * Win Server 2003 SP1+
- * Win Server 2008
- * ...
- */
- have_ip4 = TRUE;
- if (0 != strcmp(argv[2], "-"))
- {
- char command[LINE_LEN];
-
- /* install our the windows NAT module*/
- fprintf(stderr, "DEBUG: Adding NAPT/Masquerading between external IF %s and mine.\n", argv[2]);
- local_ret = execute_shellcommand("netsh routing ip nat install");
- if (0 != local_ret)
- {
- fprintf(stderr, "FATAL: Could not install NAPT support via Netsh: %s\n", strerror(local_ret));
- goto cleanup;
- }
- /* external IF */
- snprintf(command, LINE_LEN,
- "netsh routing ip nat add interface \"%s\" full", /*full = NAPT (addr+port)*/
- argv[2]);
- local_ret = execute_shellcommand(command);
- if (0 != local_ret)
- {
- fprintf(stderr, "FATAL: IPv4-NAPT on external interface failed: %s\n", strerror(local_ret));
- goto cleanup;
- }
- /* private/internal/virtual IF */
- snprintf(command, LINE_LEN,
- "netsh routing ip nat add interface \"%s\" private",
- device_visible_name);
- local_ret = execute_shellcommand(command);
- if (0 != local_ret)
- {
- fprintf(stderr, "FATAL: IPv4-NAPT on internal interface failed: %s\n", strerror(local_ret));
- goto cleanup;
-
- have_nat44 = TRUE;
- }
- }
- }
-
- run(handle);
-cleanup:
-
- if (have_ip4)
- {
- const char *address = argv[5];
- if (have_nat44)
- {
- char command[LINE_LEN];
- fprintf(stderr, "DEBUG: removing IP4 NAPT from virtual interface \n");
- snprintf(command, LINE_LEN,
- "netsh routing ip nat del interface \"%s\"",
- device_visible_name);
- local_ret = execute_shellcommand(command);
- if (0 != local_ret)
- fprintf(stderr, "WARNING: Could not remove IPv4-NAPT from internal interface, hopefully this will have no effect in future runs: %s\n", strerror(local_ret));
- }
-
- fprintf(stderr, "DEBUG: Removing IP4 address\n");
- remove_address4(address);
- }
- if (have_ip6)
- {
- const char *address = argv[3];
- fprintf(stderr, "DEBUG: Removing IP6 address\n");
- remove_address6(address);
- }
-
- fprintf(stderr, "DEBUG: removing interface\n");
- remove_interface();
- fprintf(stderr, "DEBUG: graceful exit completed\n");
-
- return global_ret;
-}
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
test_gns_lookup.conf \
test_gns_proxy.conf \
test_gns_simple_lookup.conf \
- gns-helper-service-w32.conf \
w32nsp.def \
openssl.cnf \
gnunet-gns-proxy-setup-ca.in \
$(check_SCRIPTS) \
$(pkgdata_DATA)
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
- DO_W32_HELPER = gnunet-gns-helper-service-w32
- DO_W32_NSP = libw32nsp.la
- DO_W32_NSPTOOLS = w32nsp-install w32nsp-uninstall w32nsp-resolve
- DO_W32_HS_CONF = gns-helper-service-w32.conf
- DO_NONPOSIX_GNSIMPORT = gnunet-gns-import
-endif
USE_VPN = $(top_builddir)/src/vpn/libgnunetvpn.la
if USE_COVERAGE
plugindir = $(libdir)/gnunet
pkgcfg_DATA = \
- gns.conf \
- $(DO_W32_HS_CONF)
+ gns.conf
lib_LTLIBRARIES = \
- $(DO_W32_NSP) \
libgnunetgns.la
libexec_PROGRAMS = \
gnunet-service-gns \
gnunet-dns2gns \
- $(DO_W32_HELPER) \
$(DO_PROXY)
bin_PROGRAMS = \
- $(DO_W32_NSPTOOLS) \
- $(DO_NONPOSIX_GNSIMPORT) \
gnunet-gns
noinst_PROGRAMS = \
$(GN_LIBINTL)
test_gns_proxy_CFLAGS = $(MHD_CFLAGS) $(CPP_GNURL) $(AM_CFLAGS)
-gnunet_gns_helper_service_w32_SOURCES = \
- gnunet-gns-helper-service-w32.c
-gnunet_gns_helper_service_w32_LDADD = \
- libgnunetgns.la \
- $(top_builddir)/src/identity/libgnunetidentity.la \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(GN_LIBINTL)
-
-gnunet_gns_import_SOURCES = \
- gnunet-gns-import.c
-gnunet_gns_import_LDADD = \
- $(top_builddir)/src/identity/libgnunetidentity.la \
- $(top_builddir)/src/namestore/libgnunetnamestore.la \
- $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
- $(top_builddir)/src/util/libgnunetutil.la \
- $(GN_LIBINTL)
-
+#gnunet_gns_import_SOURCES = \
+# gnunet-gns-import.c
+#gnunet_gns_import_LDADD = \
+# $(top_builddir)/src/identity/libgnunetidentity.la \
+# $(top_builddir)/src/namestore/libgnunetnamestore.la \
+# $(top_builddir)/src/gnsrecord/libgnunetgnsrecord.la \
+# $(top_builddir)/src/util/libgnunetutil.la \
+# $(GN_LIBINTL)
-w32nsp_install_SOURCES = \
- w32nsp-install.c
-w32nsp_install_LDADD = -lws2_32
-
-w32nsp_uninstall_SOURCES = \
- w32nsp-uninstall.c
-w32nsp_uninstall_LDADD = -lws2_32
-
-w32nsp_resolve_SOURCES = \
- w32nsp-resolve.c
-w32nsp_resolve_LDADD = -lws2_32
gnunet_service_gns_SOURCES = \
gnunet-service-gns.c gnunet-service-gns.h \
$(GN_LIBINTL)
-libw32nsp_la_SOURCES = \
- w32nsp.c
-libw32nsp_la_LIBADD = \
- -lole32 -lws2_32
-libw32nsp_la_LDFLAGS = \
- -export-symbols $(top_srcdir)/src/gns/w32nsp.def \
- -no-undefined -static-libgcc
-
libgnunetgns_la_SOURCES = \
gns_api.c gns_api.h \
gns_tld_api.c gns.h
+++ /dev/null
-[gns-helper-service-w32]
-START_ON_DEMAND = YES
-BINARY = gnunet-gns-helper-service-w32
-PORT = 5353
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2012, 2017 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file gnunet-gns-helper-service-w32.c
- * @brief an intermediary service to access distributed GNS
- * @author Christian Grothoff
- * @author LRN
- */
-#include "platform.h"
-#include <gnunet_util_lib.h>
-#include <gnunet_identity_service.h>
-#include <gnunet_dnsparser_lib.h>
-#include <gnunet_namestore_service.h>
-#include <gnunet_gns_service.h>
-#include <initguid.h>
-#include "gnunet_w32nsp_lib.h"
-#include "w32resolver.h"
-#include <nspapi.h>
-#include <unistr.h>
-
-#define DEFINE_DNS_GUID(a, x) DEFINE_GUID(a, 0x00090035, 0x0000, x, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46)
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_A, 0x0001);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_NS, 0x0002);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_CNAME, 0x0005);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_SOA, 0x0006);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_PTR, 0x000c);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_MX, 0x000f);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_TEXT, 0x0010);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_AAAA, 0x001c);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_SRV, 0x0021);
-DEFINE_GUID(SVCID_HOSTNAME, 0x0002a800, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
-DEFINE_GUID(SVCID_INET_HOSTADDRBYNAME, 0x0002a803, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
-
-
-struct request {
- /**
- * We keep these in a doubly-linked list (for cleanup).
- */
- struct request *next;
-
- /**
- * We keep these in a doubly-linked list (for cleanup).
- */
- struct request *prev;
-
- /**
- * Client that issued the request
- */
- struct GNUNET_SERVICE_Client *client;
-
- GUID sc;
-
- int af;
-
- wchar_t *name;
-
- char *u8name;
-
- struct GNUNET_GNS_LookupRequest *lookup_request;
-};
-
-
-/**
- * Head of the doubly-linked list (for cleanup).
- */
-static struct request *rq_head;
-
-/**
- * Tail of the doubly-linked list (for cleanup).
- */
-static struct request *rq_tail;
-
-/**
- * Handle to GNS service.
- */
-static struct GNUNET_GNS_Handle *gns;
-
-/**
- * Active operation on identity service.
- */
-static struct GNUNET_IDENTITY_Operation *id_op;
-
-/**
- * Handle for identity service.
- */
-static struct GNUNET_IDENTITY_Handle *identity;
-
-/**
- * Public key of the gns-master ego
- */
-static struct GNUNET_CRYPTO_EcdsaPublicKey gns_master_pubkey;
-
-/**
- * Set to 1 once egos are obtained.
- */
-static int got_egos;
-
-
-/**
- * Task run on shutdown. Cleans up everything.
- *
- * @param cls unused
- */
-static void
-do_shutdown(void *cls)
-{
- struct request *rq;
-
- if (NULL != id_op)
- {
- GNUNET_IDENTITY_cancel(id_op);
- id_op = NULL;
- }
- if (NULL != identity)
- {
- GNUNET_IDENTITY_disconnect(identity);
- identity = NULL;
- }
- while (NULL != (rq = rq_head))
- {
- if (NULL != rq->lookup_request)
- GNUNET_GNS_lookup_cancel(rq->lookup_request);
- GNUNET_CONTAINER_DLL_remove(rq_head,
- rq_tail,
- rq);
- GNUNET_free_non_null(rq->name);
- if (rq->u8name)
- free(rq->u8name);
- GNUNET_free(rq);
- }
- if (NULL != gns)
- {
- GNUNET_GNS_disconnect(gns);
- gns = NULL;
- }
-}
-
-
-#define MarshallPtr(ptr, base, type) \
- if (ptr) \
- ptr = (type *) ((char *)ptr - (char *)base)
-
-
-void
-MarshallWSAQUERYSETW(WSAQUERYSETW *qs, GUID *sc)
-{
- MarshallPtr(qs->lpszServiceInstanceName, qs, wchar_t);
- MarshallPtr(qs->lpServiceClassId, qs, GUID);
- MarshallPtr(qs->lpVersion, qs, WSAVERSION);
- MarshallPtr(qs->lpNSProviderId, qs, GUID);
- MarshallPtr(qs->lpszContext, qs, wchar_t);
- MarshallPtr(qs->lpafpProtocols, qs, AFPROTOCOLS);
- MarshallPtr(qs->lpszQueryString, qs, wchar_t);
- for (int i = 0; i < qs->dwNumberOfCsAddrs; i++)
- {
- MarshallPtr(qs->lpcsaBuffer[i].LocalAddr.lpSockaddr, qs, SOCKADDR);
- MarshallPtr(qs->lpcsaBuffer[i].RemoteAddr.lpSockaddr, qs, SOCKADDR);
- }
- MarshallPtr(qs->lpcsaBuffer, qs, CSADDR_INFO);
- if (IsEqualGUID(&SVCID_INET_HOSTADDRBYNAME, sc) && qs->lpBlob != NULL && qs->lpBlob->pBlobData != NULL)
- {
- struct hostent *he;
-
- he = (struct hostent *)qs->lpBlob->pBlobData;
- for (int i = 0; he->h_aliases[i] != NULL; i++)
- MarshallPtr(he->h_aliases[i], he, char);
- MarshallPtr(he->h_aliases, he, char *);
- MarshallPtr(he->h_name, he, char);
- for (int i = 0; he->h_addr_list[i] != NULL; i++)
- MarshallPtr(he->h_addr_list[i], he, void);
- MarshallPtr(he->h_addr_list, he, char *);
- MarshallPtr(qs->lpBlob->pBlobData, qs, void);
- }
- MarshallPtr(qs->lpBlob, qs, BLOB);
-}
-
-
-static void
-process_lookup_result(void *cls,
- uint32_t rd_count,
- const struct GNUNET_GNSRECORD_Data *rd)
-{
- struct request *rq = cls;
- int i, j, csanum;
- struct GNUNET_W32RESOLVER_GetMessage *msg;
- struct GNUNET_MQ_Envelope *msg_env;
- struct GNUNET_MessageHeader *msgend;
- struct GNUNET_MQ_Envelope *msgend_env;
- WSAQUERYSETW *qs;
- size_t size;
- size_t size_recalc;
- char *ptr;
- size_t blobsize = 0;
- size_t blobaddrcount = 0;
-
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Got lookup result with count %u for rq %p with client %p\n",
- rd_count,
- rq,
- rq->client);
- rq->lookup_request = NULL;
-
- if (0 == rd_count)
- {
- msgend_env = GNUNET_MQ_msg(msgend, GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE);
- GNUNET_MQ_send(GNUNET_SERVICE_client_get_mq(rq->client),
- msgend_env);
- GNUNET_CONTAINER_DLL_remove(rq_head,
- rq_tail,
- rq);
- GNUNET_free_non_null(rq->name);
- if (rq->u8name)
- free(rq->u8name);
- GNUNET_free(rq);
- return;
- }
-
- size = sizeof(struct GNUNET_W32RESOLVER_GetMessage) + sizeof(WSAQUERYSETW);
- size += (wcslen(rq->name) + 1) * sizeof(wchar_t);
- size += sizeof(GUID);
- /* lpszComment ? a TXT record? */
- size += sizeof(GUID);
- /* lpszContext ? Not sure what it is */
- csanum = 0;
- for (i = 0; i < rd_count; i++)
- {
- switch (rd[i].record_type)
- {
- case GNUNET_DNSPARSER_TYPE_A:
- if (rd[i].data_size != sizeof(struct in_addr))
- continue;
- size += sizeof(CSADDR_INFO) + sizeof(struct sockaddr_in) * 2;
- csanum++;
- break;
-
- case GNUNET_DNSPARSER_TYPE_AAAA:
- if (rd[i].data_size != sizeof(struct in6_addr))
- continue;
- size += sizeof(CSADDR_INFO) + sizeof(struct sockaddr_in6) * 2;
- csanum++;
- break;
- }
- }
- if (IsEqualGUID(&SVCID_INET_HOSTADDRBYNAME, &rq->sc))
- {
- size += sizeof(BLOB);
- blobsize += sizeof(struct hostent);
- blobsize += strlen(rq->u8name) + 1;
- blobsize += sizeof(void *); /* For aliases */
- blobsize += sizeof(void *); /* For addresses */
- for (i = 0; i < rd_count; i++)
- {
- if ((rq->af == AF_INET || rq->af == AF_UNSPEC) && rd[i].record_type == GNUNET_DNSPARSER_TYPE_A)
- {
- blobsize += sizeof(void *);
- blobsize += sizeof(struct in_addr);
- blobaddrcount++;
- }
- else if (rq->af == AF_INET6 && rd[i].record_type == GNUNET_DNSPARSER_TYPE_AAAA)
- {
- blobsize += sizeof(void *);
- blobsize += sizeof(struct in6_addr);
- blobaddrcount++;
- }
- }
- size += blobsize;
- }
- size_recalc = sizeof(struct GNUNET_W32RESOLVER_GetMessage) + sizeof(WSAQUERYSETW);
- msg_env = GNUNET_MQ_msg_extra(msg,
- size - sizeof(struct GNUNET_MessageHeader),
- GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE);
- msg->af = htonl(rq->af);
- msg->sc_data1 = htonl(rq->sc.Data1);
- msg->sc_data2 = htons(rq->sc.Data2);
- msg->sc_data3 = htons(rq->sc.Data3);
- for (i = 0; i < 8; i++)
- msg->sc_data4[i] = rq->sc.Data4[i];
- qs = (WSAQUERYSETW *)&msg[1];
- ptr = (char *)&qs[1];
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
- qs->dwSize = sizeof(WSAQUERYSETW);
- qs->lpszServiceInstanceName = (wchar_t *)ptr;
- ptr += (wcslen(rq->name) + 1) * sizeof(wchar_t);
- size_recalc += (wcslen(rq->name) + 1) * sizeof(wchar_t);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
- wcscpy(qs->lpszServiceInstanceName, rq->name);
- qs->lpServiceClassId = (GUID *)ptr;
- ptr += sizeof(GUID);
- size_recalc += sizeof(GUID);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
- GNUNET_memcpy(qs->lpServiceClassId, &rq->sc, sizeof(GUID));
- qs->lpVersion = NULL;
- qs->dwNameSpace = NS_DNS;
- qs->lpNSProviderId = (GUID *)ptr;
- ptr += sizeof(GUID);
- size_recalc += sizeof(GUID);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
- GNUNET_memcpy(qs->lpNSProviderId, &GNUNET_NAMESPACE_PROVIDER_DNS, sizeof(GUID));
- qs->lpszContext = NULL;
- qs->dwNumberOfProtocols = 0;
- qs->lpafpProtocols = NULL;
- /* Don't bother with this... */
- qs->lpszQueryString = NULL;
- qs->dwNumberOfCsAddrs = rd_count;
- qs->lpcsaBuffer = (CSADDR_INFO *)ptr;
- ptr += sizeof(CSADDR_INFO) * csanum;
- j = 0;
- for (i = 0; i < rd_count; i++)
- {
- switch (rd[i].record_type)
- {
- case GNUNET_DNSPARSER_TYPE_A:
- if (rd[i].data_size != sizeof(struct in_addr))
- continue;
- qs->lpcsaBuffer[j].iSocketType = SOCK_STREAM;
- qs->lpcsaBuffer[j].iProtocol = IPPROTO_TCP;
-
- qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength = sizeof(struct sockaddr_in);
- qs->lpcsaBuffer[j].LocalAddr.lpSockaddr = (SOCKADDR *)ptr;
- ptr += qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength;
- memset(qs->lpcsaBuffer[j].LocalAddr.lpSockaddr, 0, qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength);
- ((struct sockaddr_in *)qs->lpcsaBuffer[j].LocalAddr.lpSockaddr)->sin_family = AF_INET;
-
- qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength = sizeof(struct sockaddr_in);
- qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr = (SOCKADDR *)ptr;
- ptr += qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength;
- memset(qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr, 0, qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength);
- ((struct sockaddr_in *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin_family = AF_INET;
- ((struct sockaddr_in *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin_port = htonl(53); /* Don't ask why it's 53 */
- ((struct sockaddr_in *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin_addr = *(struct in_addr *)rd[i].data;
- size_recalc += sizeof(CSADDR_INFO) + sizeof(struct sockaddr_in) * 2;
- j++;
- break;
-
- case GNUNET_DNSPARSER_TYPE_AAAA:
- if (rd[i].data_size != sizeof(struct in6_addr))
- continue;
- qs->lpcsaBuffer[j].iSocketType = SOCK_STREAM;
- qs->lpcsaBuffer[j].iProtocol = IPPROTO_TCP;
-
- qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength = sizeof(struct sockaddr_in6);
- qs->lpcsaBuffer[j].LocalAddr.lpSockaddr = (SOCKADDR *)ptr;
- ptr += qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength;
- memset(qs->lpcsaBuffer[j].LocalAddr.lpSockaddr, 0, qs->lpcsaBuffer[j].LocalAddr.iSockaddrLength);
- ((struct sockaddr_in6 *)qs->lpcsaBuffer[j].LocalAddr.lpSockaddr)->sin6_family = AF_INET6;
-
- qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength = sizeof(struct sockaddr_in6);
- qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr = (SOCKADDR *)ptr;
- ptr += qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength;
- memset(qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr, 0, qs->lpcsaBuffer[j].RemoteAddr.iSockaddrLength);
- ((struct sockaddr_in6 *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin6_family = AF_INET6;
- ((struct sockaddr_in6 *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin6_port = htonl(53); /* Don't ask why it's 53 */
- ((struct sockaddr_in6 *)qs->lpcsaBuffer[j].RemoteAddr.lpSockaddr)->sin6_addr = *(struct in6_addr *)rd[i].data;
- size_recalc += sizeof(CSADDR_INFO) + sizeof(struct sockaddr_in6) * 2;
- j++;
- break;
-
- default:
- break;
- }
- }
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
- qs->dwOutputFlags = 0;
- if (IsEqualGUID(&SVCID_INET_HOSTADDRBYNAME, &rq->sc))
- {
- struct hostent *he;
- qs->lpBlob = (BLOB *)ptr;
- ptr += sizeof(BLOB);
-
- size_recalc += sizeof(BLOB);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- qs->lpBlob->cbSize = blobsize;
- qs->lpBlob->pBlobData = (BYTE *)ptr;
- ptr += sizeof(struct hostent);
-
- size_recalc += sizeof(struct hostent);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- he = (struct hostent *)qs->lpBlob->pBlobData;
- he->h_name = (char *)ptr;
- ptr += strlen(rq->u8name) + 1;
-
- size_recalc += strlen(rq->u8name) + 1;
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- strcpy(he->h_name, rq->u8name);
- he->h_aliases = (char **)ptr;
- ptr += sizeof(void *);
-
- size_recalc += sizeof(void *); /* For aliases */
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- he->h_aliases[0] = NULL;
- he->h_addrtype = rq->af;
- he->h_length = rq->af == AF_INET || rq->af == AF_UNSPEC ? sizeof(struct in_addr) : sizeof(struct in6_addr);
- he->h_addr_list = (char **)ptr;
- ptr += sizeof(void *) * (blobaddrcount + 1);
-
- size_recalc += sizeof(void *) * (blobaddrcount + 1); /* For addresses */
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- j = 0;
- for (i = 0; i < rd_count; i++)
- {
- if ((rq->af == AF_INET || rq->af == AF_UNSPEC) &&
- rd[i].record_type == GNUNET_DNSPARSER_TYPE_A)
- {
- he->h_addr_list[j] = (char *)ptr;
- ptr += sizeof(struct in_addr);
-
- size_recalc += sizeof(struct in_addr);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- GNUNET_memcpy(he->h_addr_list[j], rd[i].data, sizeof(struct in_addr));
- j++;
- }
- else if (rq->af == AF_INET6 && rd[i].record_type == GNUNET_DNSPARSER_TYPE_AAAA)
- {
- he->h_addr_list[j] = (char *)ptr;
- ptr += sizeof(struct in6_addr);
-
- size_recalc += sizeof(struct in6_addr);
- GNUNET_break(size_recalc == (size_t)((char *)ptr - (char *)msg));
-
- GNUNET_memcpy(he->h_addr_list[j], rd[i].data, sizeof(struct in6_addr));
- j++;
- }
- }
- he->h_addr_list[j] = NULL;
- }
- msgend_env = GNUNET_MQ_msg(msgend, GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE);
-
- if ((char *)ptr - (char *)msg != size || size_recalc != size || size_recalc != ((char *)ptr - (char *)msg))
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "Error in WSAQUERYSETW size calc: expected %u, got %lu (recalc %u)\n",
- size,
- (unsigned long)((char *)ptr - (char *)msg),
- size_recalc);
- }
- MarshallWSAQUERYSETW(qs, &rq->sc);
- GNUNET_MQ_send(GNUNET_SERVICE_client_get_mq(rq->client),
- msg_env);
- GNUNET_MQ_send(GNUNET_SERVICE_client_get_mq(rq->client),
- msgend_env);
- GNUNET_CONTAINER_DLL_remove(rq_head,
- rq_tail,
- rq);
- GNUNET_free_non_null(rq->name);
- if (rq->u8name)
- free(rq->u8name);
- GNUNET_free(rq);
-}
-
-
-static void
-get_ip_from_hostname(struct GNUNET_SERVICE_Client *client,
- const wchar_t *name,
- int af,
- GUID sc)
-{
- struct request *rq;
- char *hostname;
- size_t strl;
- size_t namelen;
- uint32_t rtype;
-
- if (IsEqualGUID(&SVCID_DNS_TYPE_A, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_A;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_NS, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_NS;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_CNAME, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_CNAME;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_SOA, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_SOA;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_PTR, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_PTR;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_MX, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_MX;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_TEXT, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_TXT;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_AAAA, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_AAAA;
- else if (IsEqualGUID(&SVCID_DNS_TYPE_SRV, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_SRV;
- else if (IsEqualGUID(&SVCID_INET_HOSTADDRBYNAME, &sc))
- rtype = GNUNET_DNSPARSER_TYPE_A;
- else
- {
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Unknown GUID: %08lX-%04X-%04X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",
- sc.Data1,
- sc.Data2,
- sc.Data3,
- sc.Data4[0],
- sc.Data4[1],
- sc.Data4[2],
- sc.Data4[3],
- sc.Data4[4],
- sc.Data4[5],
- sc.Data4[6],
- sc.Data4[7]);
- GNUNET_SERVICE_client_drop(client);
- return;
- }
-
- if (name)
- namelen = wcslen(name);
- else
- namelen = 0;
- if (namelen > 0)
- hostname = (char *)u16_to_u8(name, namelen + 1, NULL, &strl);
- else
- hostname = NULL;
-
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "W32 DNS resolver asked to look up %s for `%s'.\n",
- af == AF_INET ? "IPv4" : af == AF_INET6 ? "IPv6" : "anything",
- hostname);
-
- rq = GNUNET_new(struct request);
- rq->sc = sc;
- rq->client = client;
- rq->af = af;
- if (rq->af != AF_INET && rq->af != AF_INET6)
- rq->af = AF_INET;
- if (namelen)
- {
- rq->name = GNUNET_malloc((namelen + 1) * sizeof(wchar_t));
- GNUNET_memcpy(rq->name,
- name,
- (namelen + 1) * sizeof(wchar_t));
- rq->u8name = hostname;
- }
-
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Launching a lookup for client %p with rq %p\n",
- client,
- rq);
- rq->lookup_request = GNUNET_GNS_lookup(gns,
- hostname,
- &gns_master_pubkey,
- rtype,
- GNUNET_NO /* Use DHT */,
- &process_lookup_result,
- rq);
- if (NULL != rq->lookup_request)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Lookup launched, waiting for a reply\n");
- GNUNET_SERVICE_client_continue(client);
- GNUNET_CONTAINER_DLL_insert(rq_head,
- rq_tail,
- rq);
- }
- else
- {
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Lookup was not launched, disconnecting the client\n");
- GNUNET_free_non_null(rq->name);
- if (rq->u8name)
- free(rq->u8name);
- GNUNET_free(rq);
- GNUNET_SERVICE_client_drop(client);
- }
-}
-
-
-/**
- * Check GET-message.
- *
- * @param cls identification of the client
- * @param msg the actual message
- * @return #GNUNET_OK if @a msg is well-formed
- */
-static int
-check_get(void *cls,
- const struct GNUNET_W32RESOLVER_GetMessage *msg)
-{
- uint16_t size;
- const wchar_t *hostname;
-
- if (!got_egos)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- _("Not ready to process requests, lacking ego data\n"));
- return GNUNET_SYSERR;
- }
- size = ntohs(msg->header.size) - sizeof(struct GNUNET_W32RESOLVER_GetMessage);
- hostname = (const wchar_t *)&msg[1];
- if (hostname[size / 2 - 1] != L'\0')
- {
- GNUNET_break(0);
- return GNUNET_SYSERR;
- }
- return GNUNET_OK;
-}
-
-
-/**
- * Handle GET-message.
- *
- * @param cls identification of the client
- * @param msg the actual message
- */
-static void
-handle_get(void *cls,
- const struct GNUNET_W32RESOLVER_GetMessage *msg)
-{
- struct GNUNET_SERVICE_Client *client = cls;
- GUID sc;
- uint16_t size;
- const wchar_t *hostname;
- int af;
-
- size = ntohs(msg->header.size) - sizeof(struct GNUNET_W32RESOLVER_GetMessage);
- af = ntohl(msg->af);
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Got NBO GUID: %08X-%04X-%04X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",
- msg->sc_data1,
- msg->sc_data2,
- msg->sc_data3,
- msg->sc_data4[0],
- msg->sc_data4[1],
- msg->sc_data4[2],
- msg->sc_data4[3],
- msg->sc_data4[4],
- msg->sc_data4[5],
- msg->sc_data4[6],
- msg->sc_data4[7]);
- sc.Data1 = ntohl(msg->sc_data1);
- sc.Data2 = ntohs(msg->sc_data2);
- sc.Data3 = ntohs(msg->sc_data3);
- for (int i = 0; i < 8; i++)
- sc.Data4[i] = msg->sc_data4[i];
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Got GUID: %08lX-%04X-%04X-%02X-%02X-%02X-%02X-%02X-%02X-%02X-%02X\n",
- sc.Data1,
- sc.Data2,
- sc.Data3,
- sc.Data4[0],
- sc.Data4[1],
- sc.Data4[2],
- sc.Data4[3],
- sc.Data4[4],
- sc.Data4[5],
- sc.Data4[6],
- sc.Data4[7]);
- hostname = (const wchar_t *)&msg[1];
- GNUNET_log(GNUNET_ERROR_TYPE_DEBUG,
- "Name of %u bytes (last word is 0x%0X): %*S\n",
- size,
- hostname[size / 2 - 2],
- size / 2,
- hostname);
- get_ip_from_hostname(client,
- hostname,
- af,
- sc);
-}
-
-
-/**
- * Method called to with the ego we are to use for the lookup,
- * when the ego is the one for the default master zone.
- *
- * @param cls closure (NULL, unused)
- * @param ego ego handle, NULL if not found
- * @param ctx context for application to store data for this ego
- * (during the lifetime of this process, initially NULL)
- * @param name name assigned by the user for this ego,
- * NULL if the user just deleted the ego and it
- * must thus no longer be used
- */
-static void
-identity_master_cb(void *cls,
- struct GNUNET_IDENTITY_Ego *ego,
- void **ctx,
- const char *name)
-{
- id_op = NULL;
- if (NULL == ego)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- _("Ego for `gns-master' not found, cannot perform lookup. Did you run gnunet-gns-import.sh?\n"));
- GNUNET_SCHEDULER_shutdown();
- return;
- }
- GNUNET_IDENTITY_ego_get_public_key(ego,
- &gns_master_pubkey);
- got_egos = 1;
-}
-
-
-/**
- * Start up gns-helper-w32 service.
- *
- * @param cls closure
- * @param cfg configuration to use
- * @param service the initialized service
- */
-static void
-run(void *cls,
- const struct GNUNET_CONFIGURATION_Handle *cfg,
- struct GNUNET_SERVICE_Handle *service)
-{
- gns = GNUNET_GNS_connect(cfg);
- if (NULL == gns)
- {
- fprintf(stderr,
- _("Failed to connect to GNS\n"));
- GNUNET_SCHEDULER_shutdown();
- return;
- }
- GNUNET_SCHEDULER_add_shutdown(&do_shutdown,
- NULL);
- identity = GNUNET_IDENTITY_connect(cfg,
- NULL,
- NULL);
- if (NULL == identity)
- {
- fprintf(stderr,
- _("Failed to connect to identity service\n"));
- GNUNET_SCHEDULER_shutdown();
- return;
- }
- id_op = GNUNET_IDENTITY_get(identity,
- "gns-master",
- &identity_master_cb,
- NULL);
- GNUNET_assert(NULL != id_op);
-}
-
-
-/**
- * Handle client connecting to the service.
- *
- * @param cls NULL
- * @param client the new client
- * @param mq the message queue of @a client
- * @return @a client
- */
-static void *
-client_connect_cb(void *cls,
- struct GNUNET_SERVICE_Client *client,
- struct GNUNET_MQ_Handle *mq)
-{
- return client;
-}
-
-
-/**
- * Callback called when a client disconnected from the service
- *
- * @param cls closure for the service
- * @param c the client that disconnected
- * @param internal_cls should be equal to @a c
- */
-static void
-client_disconnect_cb(void *cls,
- struct GNUNET_SERVICE_Client *client,
- void *internal_cls)
-{
- GNUNET_assert(internal_cls == client);
-}
-
-
-/**
- * Define "main" method using service macro.
- */
-GNUNET_SERVICE_MAIN
- ("gns-helper-service-w32",
- GNUNET_SERVICE_OPTION_NONE,
- &run,
- &client_connect_cb,
- &client_disconnect_cb,
- NULL,
- GNUNET_MQ_hd_var_size(get,
- GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST,
- struct GNUNET_W32RESOLVER_GetMessage,
- NULL),
- GNUNET_MQ_handler_end());
-
-
-/* end of gnunet-gns-helper-service-w32.c */
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
# USA.
-EXTRA_DIST = map-file
+EXTRA_DIST = map-file
AM_LDFLAGS=-avoid-version -module -export-dynamic
nssdir = $(libdir)/gnunet/nss
-if !MINGW
nss_LTLIBRARIES = \
libnss_gns.la \
libnss_gns4.la \
libnss_gns6.la
-endif
sources = nss_gns_query.h nss_gns_query.c
libnss_gns6_la_SOURCES=$(libnss_gns_la_SOURCES)
libnss_gns6_la_CFLAGS=$(libnss_gns_la_CFLAGS) -DNSS_IPV6_ONLY=1
libnss_gns6_la_LDFLAGS=$(libnss_gns_la_LDFLAGS)
-
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2012 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file gns/w32nsp-install.c
- * @brief W32 integration installer for GNS
- * @author LRN
- */
-
-#include <ws2spi.h>
-#include <windows.h>
-#include <nspapi.h>
-#include <initguid.h>
-#include "gnunet_w32nsp_lib.h"
-#include <stdio.h>
-
-int
-main(int argc, char **argv)
-{
- int ret;
- int r = 1;
- WSADATA wsd;
- GUID id = GNUNET_NAMESPACE_PROVIDER_DNS;
- wchar_t *cmdl;
- int wargc;
- wchar_t **wargv;
- /* Allocate a 4K buffer to retrieve all the namespace providers */
- DWORD dwInitialBufferLen = 4096;
- DWORD dwBufferLen;
- WSANAMESPACE_INFO *pi;
- int p_count;
- int i;
-
- if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)
- {
- fprintf(stderr, "WSAStartup () failed: %lu\n", GetLastError());
- return 5;
- }
-
- dwBufferLen = dwInitialBufferLen;
- pi = malloc(dwBufferLen);
- if (NULL == pi)
- {
- fprintf(stderr, "malloc (%lu) failed: %d\n", dwBufferLen, errno);
- WSACleanup();
- return 6;
- }
- p_count = WSAEnumNameSpaceProviders(&dwBufferLen, pi);
- if (SOCKET_ERROR == p_count)
- {
- DWORD err = GetLastError();
- if (WSAEFAULT == err && dwBufferLen != dwInitialBufferLen)
- {
- free(pi);
-
- pi = malloc(dwBufferLen);
- if (pi == NULL)
- {
- fprintf(stderr, "malloc (%lu) failed: %d\n", dwBufferLen, errno);
- WSACleanup();
- return 6;
- }
-
- p_count = WSAEnumNameSpaceProviders(&dwBufferLen, pi);
- if (SOCKET_ERROR == p_count)
- {
- fprintf(stderr, "WSAEnumNameSpaceProviders (&%lu, %p) failed: %lu\n", dwBufferLen, pi, GetLastError());
- free(pi);
- WSACleanup();
- return 7;
- }
- }
- else
- {
- fprintf(stderr, "WSAEnumNameSpaceProviders (&%lu, %p) failed: %lu\n", dwBufferLen, pi, GetLastError());
- free(pi);
- WSACleanup();
- return 8;
- }
- }
- for (i = 0; i < p_count; i++)
- {
- if (IsEqualGUID(&pi[i].NSProviderId, &id))
- {
- fprintf(stderr, "GNUnet DNS provider is already installed\n");
- free(pi);
- WSACleanup();
- return 0;
- }
- }
- free(pi);
-
- cmdl = GetCommandLineW();
- if (cmdl == NULL)
- {
- WSACleanup();
- return 2;
- }
- wargv = CommandLineToArgvW(cmdl, &wargc);
- if (wargv == NULL)
- {
- WSACleanup();
- return 3;
- }
- r = 4;
-
- if (wargc == 2)
- {
- ret = WSCInstallNameSpace(L"GNUnet DNS provider", wargv[1], NS_DNS, 0, &id);
- if (ret == NO_ERROR)
- {
- fprintf(stderr, "Installed GNUnet DNS provider\n");
- r = 0;
- }
- else
- {
- r = 1;
- fprintf(stderr,
- "WSCInstallNameSpace (L\"GNUnet DNS provider\", \"%S\", %d, 0, %p) failed: %lu\n",
- wargv[1], NS_DNS, &id, GetLastError());
- }
- }
- else
- fprintf(stderr, "Usage: %S <path-to-libw32nsp>\n", wargv[0]);
- WSACleanup();
- return r;
-}
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2012 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file gns/w32nsp-resolve.c
- * @brief W32 integration for GNS
- * @author LRN
- */
-/* Instead of including gnunet_common.h */
-#define GNUNET_memcpy(dst, src, n) do { if (0 != n) { (void)memcpy(dst, src, n); } } while (0)
-
-#include <ws2tcpip.h>
-#include <windows.h>
-#include <nspapi.h>
-#include <ws2spi.h>
-#include <nspapi.h>
-#include <initguid.h>
-#include "gnunet_w32nsp_lib.h"
-#include <stdio.h>
-
-typedef int (WSPAPI *LPNSPSTARTUP)(LPGUID lpProviderId, LPNSP_ROUTINE lpnspRoutines);
-
-GUID host = { 0x0002a800, 0, 0, { 0xC0, 0, 0, 0, 0, 0, 0, 0x46 } };
-GUID ip4 = { 0x00090035, 0, 1, { 0xc0, 0, 0, 0, 0, 0, 0, 0x046 } };
-GUID ip6 = { 0x00090035, 0, 0x001c, { 0xc0, 0, 0, 0, 0, 0, 0, 0x046 } };
-
-DEFINE_GUID(W32_DNS, 0x22059D40, 0x7E9E, 0x11CF, 0xAE, 0x5A, 0x00, 0xAA, 0x00, 0xA7, 0x11, 0x2B);
-
-#define DEFINE_DNS_GUID(a, x) DEFINE_GUID(a, 0x00090035, 0x0000, x, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46)
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_A, 0x0001);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_NS, 0x0002);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_CNAME, 0x0005);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_SOA, 0x0006);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_PTR, 0x000c);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_MX, 0x000f);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_TEXT, 0x0010);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_AAAA, 0x001c);
-DEFINE_DNS_GUID(SVCID_DNS_TYPE_SRV, 0x0021);
-DEFINE_GUID(SVCID_HOSTNAME, 0x0002a800, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
-DEFINE_GUID(SVCID_INET_HOSTADDRBYNAME, 0x0002a803, 0x0000, 0x0000, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46);
-
-//
-// Utility to turn a list of offsets into a list of addresses. Used
-// to convert structures returned as BLOBs.
-//
-
-VOID
-FixList(PCHAR ** List, PCHAR Base)
-{
- if (*List)
- {
- PCHAR * Addr;
-
- Addr = *List = (PCHAR *)(((DWORD)*List + Base));
- while (*Addr)
- {
- *Addr = (PCHAR)(((DWORD)*Addr + Base));
- Addr++;
- }
- }
-}
-
-
-//
-// Routine to convert a hostent returned in a BLOB to one with
-// usable pointers. The structure is converted in-place.
-//
-VOID
-UnpackHostEnt(struct hostent * hostent)
-{
- PCHAR pch;
-
- pch = (PCHAR)hostent;
-
- if (hostent->h_name)
- {
- hostent->h_name = (PCHAR)((DWORD)hostent->h_name + pch);
- }
- FixList(&hostent->h_aliases, pch);
- FixList(&hostent->h_addr_list, pch);
-}
-
-
-static void
-print_hostent(struct hostent *he)
-{
- int i;
- char **pAlias;
-
- printf("\tOfficial name: %s\n", he->h_name);
- for (i = 0, pAlias = he->h_aliases; *pAlias != 0; pAlias++)
- {
- printf("\tAlternate name #%d: %s\n", ++i, *pAlias);
- }
- printf("\tAddress type: ");
- switch (he->h_addrtype)
- {
- case AF_INET:
- printf("AF_INET\n");
- break;
-
- case AF_INET6:
- printf("AF_INET6\n");
- break;
-
- case AF_NETBIOS:
- printf("AF_NETBIOS\n");
- break;
-
- default:
- printf(" %d\n", he->h_addrtype);
- break;
- }
- printf("\tAddress length: %d\n", he->h_length);
-
- if (he->h_addrtype == AF_INET)
- {
- struct sockaddr_in addr;
- memset(&addr, 0, sizeof(addr));
- addr.sin_family = AF_INET;
- addr.sin_port = 0;
- i = 0;
- while (he->h_addr_list[i] != 0)
- {
- char buf[1024];
- DWORD buflen = 1024;
- addr.sin_addr = *(struct in_addr *)he->h_addr_list[i++];
- if (NO_ERROR == WSAAddressToStringA((LPSOCKADDR)&addr, sizeof(addr), NULL, buf, &buflen))
- printf("\tIPv4 Address #%d: %s\n", i, buf);
- else
- printf("\tIPv4 Address #%d: Can't convert: %lu\n", i, GetLastError());
- }
- }
- else if (he->h_addrtype == AF_INET6)
- {
- struct sockaddr_in6 addr;
- memset(&addr, 0, sizeof(addr));
- addr.sin6_family = AF_INET6;
- addr.sin6_port = 0;
- i = 0;
- while (he->h_addr_list[i] != 0)
- {
- char buf[1024];
- DWORD buflen = 1024;
- addr.sin6_addr = *(struct in6_addr *)he->h_addr_list[i++];
- if (NO_ERROR == WSAAddressToStringA((LPSOCKADDR)&addr, sizeof(addr), NULL, buf, &buflen))
- printf("\tIPv6 Address #%d: %s\n", i, buf);
- else
- printf("\tIPv6 Address #%d: Can't convert: %lu\n", i, GetLastError());
- }
- }
-}
-
-
-int
-main(int argc, char **argv)
-{
- int ret;
- int r = 1;
- WSADATA wsd;
- GUID prov;
- GUID sc;
- wchar_t *cmdl;
- int wargc;
- wchar_t **wargv;
-
- if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)
- {
- fprintf(stderr, "WSAStartup() failed: %lu\n", GetLastError());
- return 5;
- }
-
- cmdl = GetCommandLineW();
- if (cmdl == NULL)
- {
- WSACleanup();
- return 2;
- }
- wargv = CommandLineToArgvW(cmdl, &wargc);
- if (wargv == NULL)
- {
- WSACleanup();
- return 3;
- }
- r = 4;
-
- if (wargc == 5)
- {
- if (wcscmp(wargv[1], L"A") == 0)
- sc = SVCID_DNS_TYPE_A;
- else if (wcscmp(wargv[1], L"AAAA") == 0)
- sc = SVCID_DNS_TYPE_AAAA;
- else if (wcscmp(wargv[1], L"name") == 0)
- sc = SVCID_HOSTNAME;
- else if (wcscmp(wargv[1], L"addr") == 0)
- sc = SVCID_INET_HOSTADDRBYNAME;
- else
- wargc -= 1;
- if (wcscmp(wargv[4], L"mswdns") == 0)
- prov = W32_DNS;
- else if (wcscmp(wargv[4], L"gnunetdns") == 0)
- prov = GNUNET_NAMESPACE_PROVIDER_DNS;
- else
- wargc -= 1;
- }
- else if (wargc == 3)
- {
- }
- else
- {
- fprintf(stderr, "Usage: %S <record type> <service name> <NSP library path> <NSP id>\n"
- "record type - one of the following: A | AAAA | name | addr\n"
- "service name - a string to resolve; \" \" (a space) means 'blank'\n"
- "NSP library path - path to libw32nsp\n"
- "NSP id - one of the following: mswdns | gnunetdns\n",
- wargv[0]);
- }
-
- if (wargc == 5)
- {
- HMODULE nsp;
-
- nsp = LoadLibraryW(wargv[3]);
- if (nsp == NULL)
- {
- fprintf(stderr, "Failed to load library `%S'\n", wargv[3]);
- }
- else
- {
- LPNSPSTARTUP startup = (LPNSPSTARTUP)GetProcAddress(nsp, "NSPStartup");
- if (startup == NULL)
- startup = (LPNSPSTARTUP)GetProcAddress(nsp, "NSPStartup@8");
- if (startup != NULL)
- {
- NSP_ROUTINE api;
- api.cbSize = sizeof(api);
- ret = startup(&prov, &api);
- if (NO_ERROR != ret)
- fprintf(stderr, "startup failed: %lu\n", GetLastError());
- else
- {
- HANDLE lookup;
- WSAQUERYSETW search;
- char buf[4096];
- WSAQUERYSETW *result = (WSAQUERYSETW *)buf;
- DWORD resultsize;
- DWORD err;
- memset(&search, 0, sizeof(search));
- search.dwSize = sizeof(search);
- search.lpszServiceInstanceName = (wcscmp(wargv[2], L" ") == 0) ? NULL : wargv[2];
- search.lpServiceClassId = ≻
- search.lpNSProviderId = &prov;
- search.dwNameSpace = NS_ALL;
- ret = api.NSPLookupServiceBegin(&prov, &search, NULL, LUP_RETURN_ALL, &lookup);
- if (ret != NO_ERROR)
- {
- fprintf(stderr, "lookup start failed\n");
- }
- else
- {
- resultsize = 4096;
- ret = api.NSPLookupServiceNext(lookup, LUP_RETURN_ALL, &resultsize, result);
- err = GetLastError();
- if (ret != NO_ERROR)
- {
- fprintf(stderr, "lookup next failed: %lu\n", err);
- }
- else
- {
- int i;
- printf("Got result:\n");
- printf(" lpszServiceInstanceName: %S\n", result->lpszServiceInstanceName ? result->lpszServiceInstanceName : L"NULL");
- if (result->lpServiceClassId)
- printf(" lpServiceClassId: { 0x%08lX,0x%04X,0x%04X, { 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X } }\n",
- result->lpServiceClassId->Data1, result->lpServiceClassId->Data2, result->lpServiceClassId->Data3, result->lpServiceClassId->Data4[0],
- result->lpServiceClassId->Data4[1], result->lpServiceClassId->Data4[2], result->lpServiceClassId->Data4[3], result->lpServiceClassId->Data4[4],
- result->lpServiceClassId->Data4[5], result->lpServiceClassId->Data4[6], result->lpServiceClassId->Data4[7]);
- else
- printf(" lpServiceClassId: NULL\n");
- if (result->lpVersion)
- printf(" lpVersion: 0x%08lX, %d\n", result->lpVersion->dwVersion, result->lpVersion->ecHow);
- else
- printf(" lpVersion: NULL\n");
- printf(" lpszComment: %S\n", result->lpszComment ? result->lpszComment : L"NULL");
- printf(" dwNameSpace: %lu\n", result->dwNameSpace);
- if (result->lpNSProviderId)
- printf(" lpNSProviderId: { 0x%08lX,0x%04X,0x%04X, { 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X } }\n",
- result->lpNSProviderId->Data1, result->lpNSProviderId->Data2, result->lpNSProviderId->Data3, result->lpNSProviderId->Data4[0],
- result->lpNSProviderId->Data4[1], result->lpNSProviderId->Data4[2], result->lpNSProviderId->Data4[3], result->lpNSProviderId->Data4[4],
- result->lpNSProviderId->Data4[5], result->lpNSProviderId->Data4[6], result->lpNSProviderId->Data4[7]);
- else
- printf(" lpNSProviderId: NULL\n");
- printf(" lpszContext: %S\n", result->lpszContext ? result->lpszContext : L"NULL");
- printf(" dwNumberOfProtocols: %lu\n", result->dwNumberOfProtocols);
- printf(" lpszQueryString: %S\n", result->lpszQueryString ? result->lpszQueryString : L"NULL");
- printf(" dwNumberOfCsAddrs: %lu\n", result->dwNumberOfCsAddrs);
- for (i = 0; i < result->dwNumberOfCsAddrs; i++)
- {
- switch (result->lpcsaBuffer[i].iSocketType)
- {
- case SOCK_STREAM:
- printf(" %d: iSocketType = SOCK_STREAM\n", i);
- break;
-
- case SOCK_DGRAM:
- printf(" %d: iSocketType = SOCK_DGRAM\n", i);
- break;
-
- default:
- printf(" %d: iSocketType = %d\n", i, result->lpcsaBuffer[i].iSocketType);
- }
- switch (result->lpcsaBuffer[i].iProtocol)
- {
- case IPPROTO_TCP:
- printf(" %d: iProtocol = IPPROTO_TCP\n", i);
- break;
-
- case IPPROTO_UDP:
- printf(" %d: iProtocol = IPPROTO_UDP\n", i);
- break;
-
- default:
- printf(" %d: iProtocol = %d\n", i, result->lpcsaBuffer[i].iProtocol);
- }
- switch (result->lpcsaBuffer[i].LocalAddr.lpSockaddr->sa_family)
- {
- case AF_INET:
- printf(" %d: loc family = AF_INET\n", i);
- break;
-
- case AF_INET6:
- printf(" %d: loc family = AF_INET6\n", i);
- break;
-
- default:
- printf(" %d: loc family = %hu\n", i, result->lpcsaBuffer[i].LocalAddr.lpSockaddr->sa_family);
- }
- switch (result->lpcsaBuffer[i].RemoteAddr.lpSockaddr->sa_family)
- {
- case AF_INET:
- printf(" %d: rem family = AF_INET\n", i);
- break;
-
- case AF_INET6:
- printf(" %d: rem family = AF_INET6\n", i);
- break;
-
- default:
- printf(" %d: rem family = %hu\n", i, result->lpcsaBuffer[i].RemoteAddr.lpSockaddr->sa_family);
- }
- char buf[1024];
- DWORD buflen = 1024;
- if (NO_ERROR == WSAAddressToStringA(result->lpcsaBuffer[i].LocalAddr.lpSockaddr, result->lpcsaBuffer[i].LocalAddr.iSockaddrLength, NULL, buf, &buflen))
- printf("\tLocal Address #%d: %s\n", i, buf);
- else
- printf("\tLocal Address #%d: Can't convert: %lu\n", i, GetLastError());
- buflen = 1024;
- if (NO_ERROR == WSAAddressToStringA(result->lpcsaBuffer[i].RemoteAddr.lpSockaddr, result->lpcsaBuffer[i].RemoteAddr.iSockaddrLength, NULL, buf, &buflen))
- printf("\tRemote Address #%d: %s\n", i, buf);
- else
- printf("\tRemote Address #%d: Can't convert: %lu\n", i, GetLastError());
- }
- printf(" dwOutputFlags: 0x%08lX\n", result->dwOutputFlags);
- printf(" lpBlob: 0x%p\n", result->lpBlob);
- if (result->lpBlob)
- {
- struct hostent *he = malloc(result->lpBlob->cbSize);
- if (he != NULL)
- {
- GNUNET_memcpy(he, result->lpBlob->pBlobData, result->lpBlob->cbSize);
- UnpackHostEnt(he);
- print_hostent(he);
- free(he);
- }
- }
- }
- ret = api.NSPLookupServiceEnd(lookup);
- if (ret != NO_ERROR)
- printf("NSPLookupServiceEnd() failed: %lu\n", GetLastError());
- }
- api.NSPCleanup(&prov);
- }
- }
- FreeLibrary(nsp);
- }
- }
- else if (wargc == 3)
- {
- int s;
- ADDRINFOW hints;
- ADDRINFOW *result;
- ADDRINFOW *pos;
-
- memset(&hints, 0, sizeof(struct addrinfo));
- hints.ai_family = AF_UNSPEC;
- hints.ai_socktype = SOCK_STREAM;
-
- if (0 != (s = GetAddrInfoW(wargv[2], NULL, &hints, &result)))
- {
- fprintf(stderr, "Cound not resolve `%S' using GetAddrInfoW: %lu\n",
- wargv[2], GetLastError());
- }
- else
- {
- for (pos = result; pos != NULL; pos = pos->ai_next)
- {
- wchar_t tmpbuf[1024];
- DWORD buflen = 1024;
- if (0 == WSAAddressToStringW(pos->ai_addr, pos->ai_addrlen, NULL, tmpbuf, &buflen))
- fprintf(stderr, "Result:\n"
- " flags: 0x%X\n"
- " family: 0x%X\n"
- " socktype: 0x%X\n"
- " protocol: 0x%X\n"
- " addrlen: %u\n"
- " addr: %S\n"
- " canonname: %S\n",
- pos->ai_flags,
- pos->ai_family,
- pos->ai_socktype,
- pos->ai_protocol,
- pos->ai_addrlen,
- tmpbuf,
- pos->ai_canonname);
- else
- fprintf(stderr, "Result:\n"
- " flags: 0x%X\n"
- " family: 0x%X\n"
- " socktype: 0x%X\n"
- " protocol: 0x%X\n"
- " addrlen: %u\n"
- " addr: %S\n"
- " canonname: %S\n",
- pos->ai_flags,
- pos->ai_family,
- pos->ai_socktype,
- pos->ai_protocol,
- pos->ai_addrlen,
- L"<can't stringify>",
- pos->ai_canonname);
- }
- if (NULL != result)
- FreeAddrInfoW(result);
- }
- }
- WSACleanup();
- return r;
-}
+++ /dev/null
-#include <ws2spi.h>
-#include <windows.h>
-#include <nspapi.h>
-#include <initguid.h>
-#include "gnunet_w32nsp_lib.h"
-#include <stdio.h>
-
-int
-main(int argc, char **argv)
-{
- int ret;
- GUID id = GNUNET_NAMESPACE_PROVIDER_DNS;
- WSADATA wsd;
-
- if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)
- {
- fprintf(stderr, "WSAStartup () failed: %lu\n", GetLastError());
- return 5;
- }
-
- ret = WSCUnInstallNameSpace(&id);
- if (ret == NO_ERROR)
- {
- fprintf(stderr, "Uninstalled GNUnet DNS provider\n");
- WSACleanup();
- return 0;
- }
- fprintf(stderr, "WSCUnInstallNameSpace () failed: %lu\n", GetLastError());
- WSACleanup();
- return 1;
-}
\ No newline at end of file
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2012 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file gns/w32nsp.c
- * @brief W32 integration for GNS
- * @author LRN
- */
-/* This code is partially based upon samples from the book
- * "Network Programming For Microsoft Windows, 2Nd Edition".
- */
-
-#define VERBOSE 0
-#if !VERBOSE
-# define DEBUGLOG(s, ...)
-#endif
-#if VERBOSE
-# define __printf__ printf
-# define DEBUGLOG(s, ...) printf(s, ## __VA_ARGS__)
-#endif
-
-#include <stdint.h>
-#include <ws2tcpip.h>
-#include <ws2spi.h>
-#include <windows.h>
-#include <nspapi.h>
-
-#define WINDOWS 1
-#define MINGW 1
-#ifndef __BYTE_ORDER
-#ifdef _BYTE_ORDER
-#define __BYTE_ORDER _BYTE_ORDER
-#else
-#ifdef BYTE_ORDER
-#define __BYTE_ORDER BYTE_ORDER
-#endif
-#endif
-#endif
-#ifndef __BIG_ENDIAN
-#ifdef _BIG_ENDIAN
-#define __BIG_ENDIAN _BIG_ENDIAN
-#else
-#ifdef BIG_ENDIAN
-#define __BIG_ENDIAN BIG_ENDIAN
-#endif
-#endif
-#endif
-#ifndef __LITTLE_ENDIAN
-#ifdef _LITTLE_ENDIAN
-#define __LITTLE_ENDIAN _LITTLE_ENDIAN
-#else
-#ifdef LITTLE_ENDIAN
-#define __LITTLE_ENDIAN LITTLE_ENDIAN
-#endif
-#endif
-#endif
-#include "w32resolver.h"
-#include <initguid.h>
-#include "gnunet_w32nsp_lib.h"
-#undef INITGUID
-
-#define NSPAPI_VERSION_MAJOR 4
-#define NSPAPI_VERSION_MINOR 4
-
-static CRITICAL_SECTION records_cs;
-
-struct record {
- _win_socket s;
- DWORD flags;
- uint8_t state;
- char *buf;
- wchar_t *name;
-};
-
-static struct record *records = NULL;
-static size_t records_len = 0;
-static size_t records_size = 0;
-
-static int
-resize_records()
-{
- size_t new_size = records_len > 0 ? records_len * 2 : 5;
- struct record *new_records = malloc(new_size * sizeof(struct record));
-
- if (new_records == NULL)
- {
- SetLastError(WSA_NOT_ENOUGH_MEMORY);
- return 0;
- }
- GNUNET_memcpy(new_records, records, records_len * sizeof(struct record));
- memset(&new_records[records_len], 0, sizeof(struct record) * (new_size - records_len));
- records_size = new_size;
- free(records);
- records = new_records;
- return 1;
-}
-
-static int
-add_record(_win_socket s, const wchar_t *name, DWORD flags)
-{
- int res = 1;
- int i;
- int empty = -1;
-
- //EnterCriticalSection (&records_cs);
- for (i = 0; i < records_len; i++)
- if (records[i].state == 0)
- break;
- empty = i;
- if (i == records_len)
- {
- res = resize_records();
- if (res)
- empty = records_len++;
- }
- if (res)
- {
- struct record r;
- r.s = s;
- r.flags = flags;
- r.name = (wchar_t *)name;
- r.state = 1;
- r.buf = NULL;
- if (name)
- r.name = wcsdup(name);
- records[empty] = r;
- }
- //LeaveCriticalSection (&records_cs);
- return res;
-}
-
-/* These are not defined by mingw.org headers at the moment*/
-typedef INT (WSPAPI *LPNSPIOCTL)(HANDLE, DWORD, LPVOID, DWORD, LPVOID, DWORD, LPDWORD, LPWSACOMPLETION, LPWSATHREADID);
-typedef struct _NSP_ROUTINE_XP {
- DWORD cbSize;
- DWORD dwMajorVersion;
- DWORD dwMinorVersion;
- LPNSPCLEANUP NSPCleanup;
- LPNSPLOOKUPSERVICEBEGIN NSPLookupServiceBegin;
- LPNSPLOOKUPSERVICENEXT NSPLookupServiceNext;
- LPNSPLOOKUPSERVICEEND NSPLookupServiceEnd;
- LPNSPSETSERVICE NSPSetService;
- LPNSPINSTALLSERVICECLASS NSPInstallServiceClass;
- LPNSPREMOVESERVICECLASS NSPRemoveServiceClass;
- LPNSPGETSERVICECLASSINFO NSPGetServiceClassInfo;
- LPNSPIOCTL NSPIoctl;
-} NSP_ROUTINE_XP;
-
-static _win_socket
-connect_to_dns_resolver()
-{
- struct sockaddr_in addr;
- _win_socket r;
- int ret;
-
- r = _win_socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- if (INVALID_SOCKET == r)
- {
- SetLastError(16004);
- return r;
- }
-
- addr.sin_family = AF_INET;
- addr.sin_port = htons(5353); /* TCP 5353 is not registered; UDP 5353 is */
- addr.sin_addr.s_addr = inet_addr("127.0.0.1");
-
- ret = _win_connect(r, (struct sockaddr *)&addr, sizeof(addr));
- if (SOCKET_ERROR == ret)
- {
- DWORD err = GetLastError();
- closesocket(r);
- SetLastError(err);
- SetLastError(16005);
- r = INVALID_SOCKET;
- }
- return r;
-}
-
-static int
-send_name_to_ip_request(LPWSAQUERYSETW lpqsRestrictions,
- LPWSASERVICECLASSINFOW lpServiceClassInfo, DWORD dwControlFlags,
- _win_socket *resolver)
-{
- struct GNUNET_W32RESOLVER_GetMessage *msg;
- int af4 = 0;
- int af6 = 0;
- char *buf;
- int ret = 1;
- int i;
- size_t size = sizeof(struct GNUNET_W32RESOLVER_GetMessage);
- size_t namelen = 0;
-
- if (lpqsRestrictions->lpszServiceInstanceName)
- namelen = sizeof(wchar_t) * (wcslen(lpqsRestrictions->lpszServiceInstanceName) + 1);
- size += namelen;
- buf = malloc(size);
- msg = (struct GNUNET_W32RESOLVER_GetMessage *)buf;
- msg->header.size = htons(size);
- msg->header.type = htons(GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST);
- if (lpqsRestrictions->dwNumberOfProtocols > 0)
- {
- int i;
- for (i = 0; i < lpqsRestrictions->dwNumberOfProtocols; i++)
- {
- if (lpqsRestrictions->lpafpProtocols[0].iAddressFamily == AF_INET)
- af4 = 1;
- if (lpqsRestrictions->lpafpProtocols[0].iAddressFamily == AF_INET6)
- af6 = 1;
- }
- }
- if (af4 && !af6)
- msg->af = htonl(AF_INET);
- else if (af6 && !af4)
- msg->af = htonl(AF_INET6);
- else
- msg->af = htonl(AF_UNSPEC);
- if (lpqsRestrictions->lpszServiceInstanceName)
- GNUNET_memcpy(&msg[1], lpqsRestrictions->lpszServiceInstanceName, namelen);
- msg->sc_data1 = htonl(lpqsRestrictions->lpServiceClassId->Data1);
- msg->sc_data2 = htons(lpqsRestrictions->lpServiceClassId->Data2);
- msg->sc_data3 = htons(lpqsRestrictions->lpServiceClassId->Data3);
- for (i = 0; i < 8; i++)
- msg->sc_data4[i] = lpqsRestrictions->lpServiceClassId->Data4[i];
- *resolver = connect_to_dns_resolver();
- if (*resolver != INVALID_SOCKET)
- {
- if (size != send(*resolver, buf, size, 0))
- {
-#if VERBOSE
- DWORD err = GetLastError();
-#endif
- closesocket(*resolver);
- *resolver = INVALID_SOCKET;
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: failed to send request: %lu\n", err);
- SetLastError(WSATRY_AGAIN);
- ret = 0;
- }
- }
- else
- ret = 0;
- free(buf);
- return ret;
-}
-
-static int WSPAPI
-NSPCleanup(LPGUID lpProviderId)
-{
- DEBUGLOG("NSPCleanup\n");
- if (IsEqualGUID(lpProviderId, &GNUNET_NAMESPACE_PROVIDER_DNS))
- {
- return NO_ERROR;
- }
- SetLastError(WSAEINVALIDPROVIDER);
- return SOCKET_ERROR;
-}
-
-BOOL WINAPI
-DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
-{
- switch (fdwReason)
- {
- case DLL_PROCESS_ATTACH:
- if (!InitializeCriticalSectionAndSpinCount(&records_cs, 0x00000400))
- {
- return FALSE;
- }
- break;
-
- case DLL_THREAD_ATTACH:
- break;
-
- case DLL_THREAD_DETACH:
- break;
-
- case DLL_PROCESS_DETACH:
- DeleteCriticalSection(&records_cs);
- break;
- }
- return TRUE;
-}
-
-
-
-
-static int WSPAPI
-GNUNET_W32NSP_LookupServiceBegin(LPGUID lpProviderId, LPWSAQUERYSETW lpqsRestrictions,
- LPWSASERVICECLASSINFOW lpServiceClassInfo, DWORD dwControlFlags,
- LPHANDLE lphLookup)
-{
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin\n");
- if (IsEqualGUID(lpProviderId, &GNUNET_NAMESPACE_PROVIDER_DNS))
- {
- SOCKET s;
- if (lpqsRestrictions->dwNameSpace != NS_DNS && lpqsRestrictions->dwNameSpace != NS_ALL)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: wrong namespace\n");
- SetLastError(WSAEINVAL);
- return SOCKET_ERROR;
- }
- if (lpqsRestrictions->lpszServiceInstanceName != NULL)
- {
- wchar_t *s = lpqsRestrictions->lpszServiceInstanceName;
- size_t len = wcslen(s);
- if (len >= 5 && wcscmp(&s[len - 5], L".zkey") == 0)
- {
- }
- else if (len >= 4 && wcscmp(&s[len - 4], L".gnu") == 0)
- {
- }
- else
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: unsupported TLD\n");
- SetLastError(WSAEINVAL);
- return SOCKET_ERROR;
- }
- }
-
- if (send_name_to_ip_request(lpqsRestrictions,
- lpServiceClassInfo, dwControlFlags, &s))
- {
- if (!(add_record(s, lpqsRestrictions->lpszServiceInstanceName, dwControlFlags)))
- {
- DWORD err = GetLastError();
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: failed to add a record\n");
- closesocket(s);
- SetLastError(err);
- return SOCKET_ERROR;
- }
- *lphLookup = (HANDLE)s;
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: OK (%lu)\n", GetLastError());
- return NO_ERROR;
- }
- return SOCKET_ERROR;
- }
- DEBUGLOG("GNUNET_W32NSP_LookupServiceBegin: wrong provider\n");
- SetLastError(WSAEINVALIDPROVIDER);
- return SOCKET_ERROR;
-}
-
-#define UnmarshallPtr(ptr, ptrtype, base) \
- if (ptr) \
- ptr = (ptrtype *) (base + (uintptr_t)ptr)
-
-static void
-UnmarshallWSAQUERYSETW(LPWSAQUERYSETW req)
-{
- int i;
- char *base = (char *)req;
-
- UnmarshallPtr(req->lpszServiceInstanceName, wchar_t, base);
- UnmarshallPtr(req->lpServiceClassId, GUID, base);
- UnmarshallPtr(req->lpVersion, WSAVERSION, base);
- UnmarshallPtr(req->lpszComment, wchar_t, base);
- UnmarshallPtr(req->lpNSProviderId, GUID, base);
- UnmarshallPtr(req->lpszContext, wchar_t, base);
- UnmarshallPtr(req->lpafpProtocols, AFPROTOCOLS, base);
- UnmarshallPtr(req->lpszQueryString, wchar_t, base);
- UnmarshallPtr(req->lpcsaBuffer, CSADDR_INFO, base);
- for (i = 0; i < req->dwNumberOfCsAddrs; i++)
- {
- UnmarshallPtr(req->lpcsaBuffer[i].LocalAddr.lpSockaddr, SOCKADDR, base);
- UnmarshallPtr(req->lpcsaBuffer[i].RemoteAddr.lpSockaddr, SOCKADDR, base);
- }
- UnmarshallPtr(req->lpBlob, BLOB, base);
- if (req->lpBlob)
- UnmarshallPtr(req->lpBlob->pBlobData, BYTE, base);
-}
-
-static int WSAAPI
-GNUNET_W32NSP_LookupServiceNext(HANDLE hLookup, DWORD dwControlFlags,
- LPDWORD lpdwBufferLength, LPWSAQUERYSETW lpqsResults)
-{
- /*DWORD effective_flags;*/
- int i;
- struct GNUNET_MessageHeader header = { 0, 0 };
- int rec = -1;
- int rc;
- int to_receive;
- int t;
- char *buf;
-
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext\n");
- //EnterCriticalSection (&records_cs);
- for (i = 0; i < records_len; i++)
- {
- if (records[i].s == (_win_socket)hLookup)
- {
- rec = i;
- break;
- }
- }
- if (rec == -1)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: invalid handle\n");
- SetLastError(WSA_INVALID_HANDLE);
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- if (records[rec].state & 4)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: session is closed\n");
- SetLastError(WSA_E_NO_MORE);
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- /*effective_flags = dwControlFlags & records[rec].flags;*/
- if (records[rec].buf)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: checking buffer\n");
- header = *((struct GNUNET_MessageHeader *)records[rec].buf);
- if (*lpdwBufferLength < header.size - sizeof(struct GNUNET_W32RESOLVER_GetMessage))
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: client buffer is too small\n");
- SetLastError(WSAEFAULT);
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- GNUNET_memcpy(lpqsResults, &((struct GNUNET_W32RESOLVER_GetMessage *)records[rec].buf)[1], header.size - sizeof(struct GNUNET_W32RESOLVER_GetMessage));
- free(records[rec].buf);
- records[rec].buf = NULL;
- //LeaveCriticalSection (&records_cs);
- UnmarshallWSAQUERYSETW((LPWSAQUERYSETW)lpqsResults);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: OK (from buffer)\n");
- return NO_ERROR;
- }
- records[rec].state |= 8;
- //LeaveCriticalSection (&records_cs);
- to_receive = sizeof(header);
- rc = 0;
-#if VERBOSE
- {
- unsigned long have;
- int ior = ioctlsocket((_win_socket)hLookup, FIONREAD, &have);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: reading %d bytes as a header from %p, %lu bytes available\n", to_receive, hLookup, have);
- }
-#endif
- while (to_receive > 0)
- {
- t = recv((_win_socket)hLookup, &((char *)&header)[rc], to_receive, 0);
- if (t > 0)
- {
- rc += t;
- to_receive -= t;
- }
- else
- break;
- }
-#if VERBOSE
- {
- unsigned long have;
- int ior = ioctlsocket((_win_socket)hLookup, FIONREAD, &have);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: read %d bytes as a header from %p, %lu bytes available\n", rc, hLookup, have);
- }
-#endif
- //EnterCriticalSection (&records_cs);
- records[rec].state &= ~8;
- if (rc != sizeof(header))
- {
- if (records[rec].state & 2)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: call cancelled\n");
- SetLastError(WSA_E_CANCELLED);
- }
- else
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: failed to receive enough data for a header (rc %d != %u, state is 0x%0X)\n", rc, sizeof(header), records[rec].state);
- SetLastError(WSA_E_NO_MORE);
- }
- records[rec].state |= 4;
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- records[rec].state &= ~8;
- header.type = ntohs(header.type);
- header.size = ntohs(header.size);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: header type %d, header size %u\n", header.type, header.size);
- if (header.type != GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE ||
- (header.type == GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE &&
- header.size == sizeof(header)))
- {
- records[rec].state |= 4;
- if (header.type != GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE)
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: header type is wrong\n");
- else
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: empty header - no data\n");
- //LeaveCriticalSection (&records_cs);
- SetLastError(WSA_E_NO_MORE);
- return SOCKET_ERROR;
- }
- buf = malloc(header.size);
- if (buf == NULL)
- {
- records[rec].state |= 4;
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: malloc() failed\n");
- //LeaveCriticalSection (&records_cs);
- SetLastError(WSA_E_NO_MORE);
- return SOCKET_ERROR;
- }
- records[rec].state |= 8;
- //LeaveCriticalSection (&records_cs);
- GNUNET_memcpy(buf, &header, sizeof(header));
- to_receive = header.size - sizeof(header);
- rc = 0;
-#if VERBOSE
- {
- unsigned long have;
- int ior = ioctlsocket((_win_socket)hLookup, FIONREAD, &have);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: reading %d bytes as a body from %p, %lu bytes available\n", to_receive, hLookup, have);
- }
-#endif
- while (to_receive > 0)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: recv (%d)\n", to_receive);
- t = recv((_win_socket)hLookup, &((char *)&((struct GNUNET_MessageHeader *)buf)[1])[rc], to_receive, 0);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: recv returned %d\n", t);
- if (t > 0)
- {
- rc += t;
- to_receive -= t;
- }
- else
- break;
- }
-#if VERBOSE
- {
- unsigned long have;
- int ior = ioctlsocket((_win_socket)hLookup, FIONREAD, &have);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: read %d bytes as a body from %p, %lu bytes available\n", rc, hLookup, have);
- }
-#endif
- //EnterCriticalSection (&records_cs);
- records[rec].state &= ~8;
- if (rc != header.size - sizeof(header))
- {
- free(buf);
- if (records[rec].state & 2)
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: call cancelled\n");
- SetLastError(WSA_E_CANCELLED);
- }
- else
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: failed to receive enough data for the rest (rc %d != %d, state is 0x%0X)\n", rc, header.size - sizeof(header), records[rec].state);
- SetLastError(WSA_E_NO_MORE);
- }
- records[rec].state |= 4;
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- if (*lpdwBufferLength < header.size - sizeof(struct GNUNET_W32RESOLVER_GetMessage))
- {
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: client buffer is too small\n");
- SetLastError(WSAEFAULT);
- records[rec].buf = buf;
- //LeaveCriticalSection (&records_cs);
- return SOCKET_ERROR;
- }
- //LeaveCriticalSection (&records_cs);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: writing %d bytes into result buffer\n", header.size - sizeof(struct GNUNET_W32RESOLVER_GetMessage));
- GNUNET_memcpy(lpqsResults, &((struct GNUNET_W32RESOLVER_GetMessage *)buf)[1], header.size - sizeof(struct GNUNET_W32RESOLVER_GetMessage));
- free(buf);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: OK\n");
- UnmarshallWSAQUERYSETW((LPWSAQUERYSETW)lpqsResults);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceNext: returning (%lu)\n", GetLastError());
- return NO_ERROR;
-}
-
-static int WSPAPI
-GNUNET_W32NSP_LookupServiceEnd(HANDLE hLookup)
-{
- int i;
- int rec = -1;
-
- DEBUGLOG("GNUNET_W32NSP_LookupServiceEnd\n");
- //EnterCriticalSection (&records_cs);
- for (i = 0; i < records_len; i++)
- {
- if (records[i].s == (_win_socket)hLookup)
- {
- rec = i;
- break;
- }
- }
- if (rec == -1)
- {
- SetLastError(WSA_INVALID_HANDLE);
- //LeaveCriticalSection (&records_cs);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceEnd: invalid handle\n");
- return SOCKET_ERROR;
- }
- records[rec].state |= 2;
- closesocket(records[rec].s);
- while (records[rec].state & 8)
- {
- //LeaveCriticalSection (&records_cs);
- Sleep(10);
- //EnterCriticalSection (&records_cs);
- }
- if (records[rec].buf)
- free(records[rec].buf);
- records[rec].buf = NULL;
- records[rec].state = 0;
- if (records[rec].name)
- free(records[rec].name);
- //LeaveCriticalSection (&records_cs);
- DEBUGLOG("GNUNET_W32NSP_LookupServiceEnd: OK\n");
- return NO_ERROR;
-}
-
-static int WSAAPI
-GNUNET_W32NSP_SetService(LPGUID lpProviderId,
- LPWSASERVICECLASSINFOW lpServiceClassInfo, LPWSAQUERYSETW lpqsRegInfo,
- WSAESETSERVICEOP essOperation, DWORD dwControlFlags)
-{
- DEBUGLOG("GNUNET_W32NSP_SetService\n");
- SetLastError(WSAEOPNOTSUPP);
- return SOCKET_ERROR;
-}
-
-static int WSAAPI
-GNUNET_W32NSP_InstallServiceClass(LPGUID lpProviderId,
- LPWSASERVICECLASSINFOW lpServiceClassInfo)
-{
- DEBUGLOG("GNUNET_W32NSP_InstallServiceClass\n");
- SetLastError(WSAEOPNOTSUPP);
- return SOCKET_ERROR;
-}
-
-
-static int WSAAPI
-GNUNET_W32NSP_RemoveServiceClass(LPGUID lpProviderId, LPGUID lpServiceClassId)
-{
- DEBUGLOG("GNUNET_W32NSP_RemoveServiceClass\n");
- SetLastError(WSAEOPNOTSUPP);
- return SOCKET_ERROR;
-}
-
-static int WSAAPI
-GNUNET_W32NSP_GetServiceClassInfo(LPGUID lpProviderId, LPDWORD lpdwBufSize,
- LPWSASERVICECLASSINFOW lpServiceClassInfo)
-{
- DEBUGLOG("GNUNET_W32NSP_GetServiceClassInfo\n");
- SetLastError(WSAEOPNOTSUPP);
- return SOCKET_ERROR;
-}
-
-static int WSAAPI
-GNUNET_W32NSP_Ioctl(HANDLE hLookup, DWORD dwControlCode, LPVOID lpvInBuffer,
- DWORD cbInBuffer, LPVOID lpvOutBuffer, DWORD cbOutBuffer,
- LPDWORD lpcbBytesReturned, LPWSACOMPLETION lpCompletion,
- LPWSATHREADID lpThreadId)
-{
- DEBUGLOG("GNUNET_W32NSP_Ioctl\n");
- SetLastError(WSAEOPNOTSUPP);
- return SOCKET_ERROR;
-}
-
-/**
- * This function is called by Winsock to hook up our provider.
- * It is the only function that [should be/is] exported by the
- * provider. All other routines are passed as pointers in lpnspRoutines.
- */
-int WSAAPI
-GNUNET_W32NSP_NSPStartup(LPGUID lpProviderId, LPNSP_ROUTINE lpnspRoutines)
-{
- if (IsEqualGUID(lpProviderId, &GNUNET_NAMESPACE_PROVIDER_DNS))
- {
- if (!connect_to_dns_resolver())
- {
- return SOCKET_ERROR;
- }
- /* This assumes that NSP_ROUTINE struct doesn't have a NSPIoctl member.
- * If it does, you need to use FIELD_OFFSET() macro to get offset of NSPIoctl
- * and use that offset as cbSize.
- */
- lpnspRoutines->cbSize = sizeof(NSP_ROUTINE);
-
- lpnspRoutines->dwMajorVersion = NSPAPI_VERSION_MAJOR;
- lpnspRoutines->dwMinorVersion = NSPAPI_VERSION_MINOR;
- lpnspRoutines->NSPCleanup = NSPCleanup;
- lpnspRoutines->NSPLookupServiceBegin = GNUNET_W32NSP_LookupServiceBegin;
- lpnspRoutines->NSPLookupServiceNext = GNUNET_W32NSP_LookupServiceNext;
- lpnspRoutines->NSPLookupServiceEnd = GNUNET_W32NSP_LookupServiceEnd;
- lpnspRoutines->NSPSetService = GNUNET_W32NSP_SetService;
- lpnspRoutines->NSPInstallServiceClass = GNUNET_W32NSP_InstallServiceClass;
- lpnspRoutines->NSPRemoveServiceClass = GNUNET_W32NSP_RemoveServiceClass;
- lpnspRoutines->NSPGetServiceClassInfo = GNUNET_W32NSP_GetServiceClassInfo;
- /*((NSP_ROUTINE_XP *) lpnspRoutines)->NSPIoctl = GNUNET_W32NSP_Ioctl;*/
- lpnspRoutines->NSPIoctl = GNUNET_W32NSP_Ioctl;
- return NO_ERROR;
- }
- SetLastError(WSAEINVALIDPROVIDER);
- return SOCKET_ERROR;
-}
-
+++ /dev/null
-EXPORTS\r
-NSPStartup=GNUNET_W32NSP_NSPStartup\r
libexecdir= $(pkglibdir)/libexec/
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
plugindir = $(libdir)/gnunet
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
gnunetincludedir = $(includedir)/gnunet
-if MINGW
- WINPROC = winproc.h
-endif
-
EXTRA_DIST = \
gauger.h \
block_fs.h \
if TALER_ONLY
gnunetinclude_HEADERS = \
- platform.h plibc.h $(WINPROC) gettext.h \
+ platform.h gettext.h \
gnunet_common.h \
gnunet_container_lib.h \
gnunet_crypto_lib.h \
else
gnunetinclude_HEADERS = \
- platform.h $(WINPROC) gettext.h \
+ platform.h gettext.h \
compat.h \
gnunet_applications.h \
gnunet_arm_service.h \
#if HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
-#ifdef MINGW
-#include "winproc.h"
-#endif
#ifdef HAVE_STDINT_H
#include <stdint.h>
#endif
/**
* gcc-ism to get gcc bitfield layout when compiling with -mms-bitfields
*/
-#if MINGW
-#define GNUNET_GCC_STRUCT_LAYOUT __attribute__ ((gcc_struct))
-#else
#define GNUNET_GCC_STRUCT_LAYOUT
-#endif
/**
* gcc-ism to force alignment; we use this to align char-arrays
*/
#define GNUNET_NORETURN __attribute__ ((noreturn))
-#if MINGW
-#if __GNUC__ > 3
-/**
- * gcc 4.x-ism to pack structures even on W32 (to be used before structs);
- * Using this would cause structs to be unaligned on the stack on Sparc,
- * so we *only* use this on W32 (see #670578 from Debian); fortunately,
- * W32 doesn't run on sparc anyway.
- */
-#define GNUNET_NETWORK_STRUCT_BEGIN _Pragma("pack(push)") _Pragma ("pack(1)")
-
-/**
- * gcc 4.x-ism to pack structures even on W32 (to be used after structs)
- * Using this would cause structs to be unaligned on the stack on Sparc,
- * so we *only* use this on W32 (see #670578 from Debian); fortunately,
- * W32 doesn't run on sparc anyway.
- */
-#define GNUNET_NETWORK_STRUCT_END _Pragma("pack(pop)")
-
-#else
-#error gcc 4.x or higher required on W32 systems
-#endif
-#else
/**
* Define as empty, GNUNET_PACKED should suffice, but this won't work on W32
*/
* Define as empty, GNUNET_PACKED should suffice, but this won't work on W32;
*/
#define GNUNET_NETWORK_STRUCT_END
-#endif
/* ************************ super-general types *********************** */
+++ /dev/null
-/*
- * TAP-Windows -- A kernel driver to provide virtual tap
- * device functionality on Windows.
- *
- * This code was inspired by the CIPE-Win32 driver by Damion K. Wilson.
- *
- * This source code is Copyright Copyright (C) 2002-2010 OpenVPN Technologies, Inc.,
- * and is released under the GPL version 2 (see below).
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2
- * as published by the Free Software Foundation.
- *
- * 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 (see the file COPYING included with this
- * distribution); if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- */
-/**
- * @file
- * TAP32 virtual network driver defines
- *
- * @attention This file is part of openvpn and for kept
- * as a separate file to allow easier upgrading.
- */
-#ifndef __TAP_WIN_H
-#define __TAP_WIN_H
-
-/*
- * =============
- * TAP IOCTLs
- * =============
- */
-
-#define TAP_WIN_CONTROL_CODE(request, method) \
- CTL_CODE(FILE_DEVICE_UNKNOWN, request, method, FILE_ANY_ACCESS)
-
-/* Present in 8.1 */
-
-#define TAP_WIN_IOCTL_GET_MAC TAP_WIN_CONTROL_CODE(1, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_GET_VERSION TAP_WIN_CONTROL_CODE(2, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_GET_MTU TAP_WIN_CONTROL_CODE(3, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_GET_INFO TAP_WIN_CONTROL_CODE(4, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_CONFIG_POINT_TO_POINT TAP_WIN_CONTROL_CODE(5, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_SET_MEDIA_STATUS TAP_WIN_CONTROL_CODE(6, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_CONFIG_DHCP_MASQ TAP_WIN_CONTROL_CODE(7, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_GET_LOG_LINE TAP_WIN_CONTROL_CODE(8, METHOD_BUFFERED)
-#define TAP_WIN_IOCTL_CONFIG_DHCP_SET_OPT TAP_WIN_CONTROL_CODE(9, METHOD_BUFFERED)
-
-/* Added in 8.2 */
-
-/* obsoletes TAP_WIN_IOCTL_CONFIG_POINT_TO_POINT */
-#define TAP_WIN_IOCTL_CONFIG_TUN TAP_WIN_CONTROL_CODE(10, METHOD_BUFFERED)
-
-/*
- * =================
- * Registry keys
- * =================
- */
-
-#define ADAPTER_KEY "SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E972-E325-11CE-BFC1-08002BE10318}"
-
-#define NETWORK_CONNECTIONS_KEY "SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}"
-
-/*
- * ======================
- * Filesystem prefixes
- * ======================
- */
-
-#define USERMODEDEVICEDIR "\\\\.\\Global\\"
-#define SYSDEVICEDIR "\\Device\\"
-#define USERDEVICEDIR "\\DosDevices\\Global\\"
-#define TAP_WIN_SUFFIX ".tap"
-
-#endif
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2001, 2002, 2003, 2004, 2005 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @author Nils Durner
- *
- * @file
- * Definitions for MS Windows
- */
-
-#ifndef _WINPROC_H
-#define _WINPROC_H
-
-#include <io.h>
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <sys/timeb.h>
-#include <time.h>
-#include <dirent.h>
-#ifndef FD_SETSIZE
-#define FD_SETSIZE 1024
-#endif
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#include <windows.h>
-#include <winerror.h>
-#include <iphlpapi.h>
-#include <shlobj.h>
-#include <objbase.h>
-#include <sys/param.h> /* #define BYTE_ORDER */
-#include <ntsecapi.h>
-#include <lm.h>
-#include <aclapi.h>
-
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-#ifndef MAX_NAME_LENGTH
-#define MAX_NAME_LENGTH 25
-#endif
-
-typedef DWORD WINAPI (*TNtQuerySystemInformation) (int, PVOID, ULONG, PULONG);
-typedef DWORD WINAPI (*TGetIfEntry) (PMIB_IFROW pIfRow);
-typedef DWORD WINAPI (*TGetIpAddrTable) (PMIB_IPADDRTABLE pIpAddrTable,
- PULONG pdwSize, BOOL bOrder);
-typedef DWORD WINAPI (*TGetIfTable) (PMIB_IFTABLE pIfTable, PULONG pdwSize,
- BOOL bOrder);
-typedef DWORD WINAPI (*TGetBestInterfaceEx) (struct sockaddr *, PDWORD);
-/* TODO: Explicitly import -A variants (i.e. TCreateHardLinkA) or -W
- * variants (TCreateHardLinkW), etc.
- */
-typedef DWORD WINAPI (*TCreateHardLink) (LPCTSTR lpFileName,
- LPCTSTR lpExistingFileName,
- LPSECURITY_ATTRIBUTES
- lpSecurityAttributes);
-typedef SC_HANDLE WINAPI (*TOpenSCManager) (LPCTSTR lpMachineName,
- LPCTSTR lpDatabaseName,
- DWORD dwDesiredAccess);
-typedef SC_HANDLE WINAPI (*TCreateService) (SC_HANDLE hSCManager,
- LPCTSTR lpServiceName,
- LPCTSTR lpDisplayName,
- DWORD dwDesiredAccess,
- DWORD dwServiceType,
- DWORD dwStartType,
- DWORD dwErrorControl,
- LPCTSTR lpBinaryPathName,
- LPCTSTR lpLoadOrderGroup,
- LPDWORD lpdwTagId,
- LPCTSTR lpDependencies,
- LPCTSTR lpServiceStartName,
- LPCTSTR lpPassword);
-typedef BOOL WINAPI (*TCloseServiceHandle) (SC_HANDLE hSCObject);
-typedef BOOL WINAPI (*TDeleteService) (SC_HANDLE hService);
-typedef SERVICE_STATUS_HANDLE WINAPI (*TRegisterServiceCtrlHandler) (LPCTSTR
- lpServiceName,
- LPHANDLER_FUNCTION
- lpHandlerProc);
-typedef BOOL WINAPI (*TSetServiceStatus) (SERVICE_STATUS_HANDLE
- hServiceStatus,
- LPSERVICE_STATUS lpServiceStatus);
-typedef BOOL WINAPI (*TStartServiceCtrlDispatcher) (const
- LPSERVICE_TABLE_ENTRY
- lpServiceTable);
-typedef BOOL WINAPI (*TControlService) (SC_HANDLE hService, DWORD dwControl,
- LPSERVICE_STATUS lpServiceStatus);
-typedef SC_HANDLE WINAPI (*TOpenService) (SC_HANDLE hSCManager,
- LPCTSTR lpServiceName,
- DWORD dwDesiredAccess);
-typedef DWORD WINAPI (*TGetAdaptersInfo) (PIP_ADAPTER_INFO pAdapterInfo,
- PULONG pOutBufLen);
-typedef NET_API_STATUS WINAPI (*TNetUserAdd) (LPCWSTR, DWORD, PBYTE, PDWORD);
-typedef NET_API_STATUS WINAPI (*TNetUserSetInfo) (LPCWSTR servername,
- LPCWSTR username,
- DWORD level, LPBYTE buf,
- LPDWORD param_err);
-typedef NTSTATUS NTAPI (*TLsaOpenPolicy) (PLSA_UNICODE_STRING,
- PLSA_OBJECT_ATTRIBUTES, ACCESS_MASK,
- PLSA_HANDLE);
-typedef NTSTATUS NTAPI (*TLsaAddAccountRights) (LSA_HANDLE, PSID,
- PLSA_UNICODE_STRING, ULONG);
-typedef NTSTATUS NTAPI (*TLsaRemoveAccountRights) (LSA_HANDLE, PSID, BOOLEAN,
- PLSA_UNICODE_STRING,
- ULONG);
-typedef NTSTATUS NTAPI (*TLsaClose) (LSA_HANDLE);
-typedef BOOL WINAPI (*TLookupAccountName) (LPCTSTR lpSystemName,
- LPCTSTR lpAccountName, PSID Sid,
- LPDWORD cbSid,
- LPTSTR ReferencedDomainName,
- LPDWORD cchReferencedDomainName,
- PSID_NAME_USE peUse);
-
-typedef BOOL WINAPI (*TGetFileSecurity) (LPCTSTR lpFileName,
- SECURITY_INFORMATION
- RequestedInformation,
- PSECURITY_DESCRIPTOR
- pSecurityDescriptor, DWORD nLength,
- LPDWORD lpnLengthNeeded);
-typedef BOOL WINAPI (*TInitializeSecurityDescriptor) (PSECURITY_DESCRIPTOR
- pSecurityDescriptor,
- DWORD dwRevision);
-typedef BOOL WINAPI (*TGetSecurityDescriptorDacl) (PSECURITY_DESCRIPTOR
- pSecurityDescriptor,
- LPBOOL lpbDaclPresent,
- PACL * pDacl,
- LPBOOL lpbDaclDefaulted);
-typedef BOOL WINAPI (*TGetAclInformation) (PACL pAcl, LPVOID pAclInformation,
- DWORD nAclInformationLength,
- ACL_INFORMATION_CLASS
- dwAclInformationClass);
-typedef BOOL WINAPI (*TInitializeAcl) (PACL pAcl, DWORD nAclLength,
- DWORD dwAclRevision);
-typedef BOOL WINAPI (*TGetAce) (PACL pAcl, DWORD dwAceIndex, LPVOID * pAce);
-typedef BOOL WINAPI (*TEqualSid) (PSID pSid1, PSID pSid2);
-typedef BOOL WINAPI (*TAddAce) (PACL pAcl, DWORD dwAceRevision,
- DWORD dwStartingAceIndex, LPVOID pAceList,
- DWORD nAceListLength);
-typedef BOOL WINAPI (*TAddAccessAllowedAce) (PACL pAcl, DWORD dwAceRevision,
- DWORD AccessMask, PSID pSid);
-typedef BOOL WINAPI (*TSetNamedSecurityInfo) (LPTSTR pObjectName,
- SE_OBJECT_TYPE ObjectType,
- SECURITY_INFORMATION
- SecurityInfo, PSID psidOwner,
- PSID psidGroup, PACL pDacl,
- PACL pSacl);
-
-extern TGetBestInterfaceEx GNGetBestInterfaceEx;
-extern TNtQuerySystemInformation GNNtQuerySystemInformation;
-extern TGetIfEntry GNGetIfEntry;
-extern TGetIpAddrTable GNGetIpAddrTable;
-extern TGetIfTable GNGetIfTable;
-extern TCreateHardLink GNCreateHardLink;
-extern TOpenSCManager GNOpenSCManager;
-extern TCreateService GNCreateService;
-extern TCloseServiceHandle GNCloseServiceHandle;
-extern TDeleteService GNDeleteService;
-extern TRegisterServiceCtrlHandler GNRegisterServiceCtrlHandler;
-extern TSetServiceStatus GNSetServiceStatus;
-extern TStartServiceCtrlDispatcher GNStartServiceCtrlDispatcher;
-extern TControlService GNControlService;
-extern TOpenService GNOpenService;
-extern TGetAdaptersInfo GNGetAdaptersInfo;
-extern TNetUserAdd GNNetUserAdd;
-extern TNetUserSetInfo GNNetUserSetInfo;
-extern TLsaOpenPolicy GNLsaOpenPolicy;
-extern TLsaAddAccountRights GNLsaAddAccountRights;
-extern TLsaRemoveAccountRights GNLsaRemoveAccountRights;
-extern TLsaClose GNLsaClose;
-extern TLookupAccountName GNLookupAccountName;
-extern TGetFileSecurity GNGetFileSecurity;
-extern TInitializeSecurityDescriptor GNInitializeSecurityDescriptor;
-extern TGetSecurityDescriptorDacl GNGetSecurityDescriptorDacl;
-extern TGetAclInformation GNGetAclInformation;
-extern TInitializeAcl GNInitializeAcl;
-extern TGetAce GNGetAce;
-extern TEqualSid GNEqualSid;
-extern TAddAce GNAddAce;
-extern TAddAccessAllowedAce GNAddAccessAllowedAce;
-extern TSetNamedSecurityInfo GNSetNamedSecurityInfo;
-
-
-BOOL CreateShortcut(const char *pszSrc, const char *pszDest);
-BOOL DereferenceShortcut(char *pszShortcut);
-long QueryRegistry(HKEY hMainKey, const char *pszKey, const char *pszSubKey,
- char *pszBuffer, long *pdLength);
-int ListNICs(void (*callback)(void *, const char *, int), void *cls);
-BOOL AddPathAccessRights(char *lpszFileName, char *lpszAccountName,
- DWORD dwAccessMask);
-char *winErrorStr(const char *prefix, int dwErr);
-void EnumNICs(PMIB_IFTABLE * pIfTable, PMIB_IPADDRTABLE * pAddrTable);
-
-#define ENUMNICS3_MASK_OK 0x01
-#define ENUMNICS3_BCAST_OK 0x02
-
-struct EnumNICs3_results {
- unsigned char flags;
- int is_default;
- char pretty_name[1001];
- size_t addr_size;
- SOCKADDR_STORAGE address;
- SOCKADDR_STORAGE mask;
- SOCKADDR_STORAGE broadcast;
-};
-
-int EnumNICs3(struct EnumNICs3_results **, int *EnumNICs3_results_count);
-void EnumNICs3_free(struct EnumNICs3_results *);
-int GNInitWinEnv();
-void GNShutdownWinEnv();
-
-BOOL SafeTerminateProcess(HANDLE hProcess, UINT uExitCode, DWORD dwTimeout);
-#ifdef __cplusplus
-}
-#endif
-
-#endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
pkgcfg_DATA = \
namecache.conf
-
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
pkgcfg_DATA = \
namestore.conf
-
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
- NATBIN = gnunet-helper-nat-server gnunet-helper-nat-client
- NATSERVER = gnunet-helper-nat-server-windows.c
- NATCLIENT = gnunet-helper-nat-client-windows.c
-endif
-
libexecdir= $(pkglibdir)/libexec/
pkgcfgdir= $(pkgdatadir)/config.d/
$(NATSERVER)
gnunet_helper_nat_client_SOURCES = \
- $(NATCLIENT)
+ $(NATCLIENT)
gnunet_nat_SOURCES = \
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2010 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @file src/nat/gnunet-helper-nat-client-windows.c
- * @brief Tool to help bypass NATs using ICMP method; must run as
- * administrator on W32
- * This code is for W32.
- * @author Nathan Evans
- *
- * This program will send ONE ICMP message using RAW sockets
- * to the IP address specified as the second argument. Since
- * it uses RAW sockets, it must be installed SUID or run as 'root'.
- * In order to keep the security risk of the resulting SUID binary
- * minimal, the program ONLY opens the RAW socket with root
- * privileges, then drops them and only then starts to process
- * command line arguments. The code also does not link against
- * any shared libraries (except libc) and is strictly minimal
- * (except for checking for errors). The following list of people
- * have reviewed this code and considered it safe since the last
- * modification (if you reviewed it, please have your name added
- * to the list):
- *
- * - Christian Grothoff
- * - Nathan Evans
- */
-#define _GNU_SOURCE
-/* Instead of including gnunet_common.h */
-#define GNUNET_memcpy(dst, src, n) do { if (0 != n) { (void)memcpy(dst, src, n); } } while (0)
-
-#define FD_SETSIZE 1024
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <unistd.h>
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
-#include <stdlib.h>
-#include <stdint.h>
-#include <time.h>
-
-
-#define ICMP_ECHO 8
-#define IPDEFTTL 64
-#define ICMP_TIME_EXCEEDED 11
-
-/**
- * Must match IP given in the server.
- */
-#define DUMMY_IP "192.0.2.86"
-
-#define NAT_TRAV_PORT 22225
-
-/**
- * IPv4 header.
- */
-struct ip_header {
- /**
- * Version (4 bits) + Internet header length (4 bits)
- */
- uint8_t vers_ihl;
-
- /**
- * Type of service
- */
- uint8_t tos;
-
- /**
- * Total length
- */
- uint16_t pkt_len;
-
- /**
- * Identification
- */
- uint16_t id;
-
- /**
- * Flags (3 bits) + Fragment offset (13 bits)
- */
- uint16_t flags_frag_offset;
-
- /**
- * Time to live
- */
- uint8_t ttl;
-
- /**
- * Protocol
- */
- uint8_t proto;
-
- /**
- * Header checksum
- */
- uint16_t checksum;
-
- /**
- * Source address
- */
- uint32_t src_ip;
-
- /**
- * Destination address
- */
- uint32_t dst_ip;
-};
-
-
-/**
- * Format of ICMP packet.
- */
-struct icmp_ttl_exceeded_header {
- uint8_t type;
-
- uint8_t code;
-
- uint16_t checksum;
-
- uint32_t unused;
-
- /* followed by original payload */
-};
-
-struct icmp_echo_header {
- uint8_t type;
-
- uint8_t code;
-
- uint16_t checksum;
-
- uint32_t reserved;
-};
-
-/**
- * Beginning of UDP packet.
- */
-struct udp_header {
- uint16_t src_port;
-
- uint16_t dst_port;
-
- uint16_t length;
-
- uint16_t crc;
-};
-
-/**
- * Will this binary be run in permissions testing mode?
- */
-static boolean privilege_testing = FALSE;
-
-/**
- * Socket we use to send our ICMP packets.
- */
-static _win_socket rawsock;
-
-/**
- * Target "dummy" address.
- */
-static struct in_addr dummy;
-
-/**
- * Port we are listening on (communicated to the server).
- */
-static uint16_t port;
-
-
-
-/**
- * Convert IPv4 address from text to binary form.
- *
- * @param af address family
- * @param cp the address to print
- * @param buf where to write the address result
- * @return 1 on success
- */
-static int
-inet_pton(int af, const char *cp, struct in_addr *buf)
-{
- buf->s_addr = inet_addr(cp);
- if (buf->s_addr == INADDR_NONE)
- {
- fprintf(stderr, "Error %d handling address %s", WSAGetLastError(), cp);
- return 0;
- }
- return 1;
-}
-
-
-/**
- * CRC-16 for IP/ICMP headers.
- *
- * @param data what to calculate the CRC over
- * @param bytes number of bytes in data (must be multiple of 2)
- * @return the CRC 16.
- */
-static uint16_t
-calc_checksum(const uint16_t * data, unsigned int bytes)
-{
- uint32_t sum;
- unsigned int i;
-
- sum = 0;
- for (i = 0; i < bytes / 2; i++)
- sum += data[i];
- sum = (sum & 0xffff) + (sum >> 16);
- sum = htons(0xffff - sum);
- return sum;
-}
-
-
-/**
- * Send an ICMP message to the target.
- *
- * @param my_ip source address
- * @param other target address
- */
-static void
-send_icmp_udp(const struct in_addr *my_ip, const struct in_addr *other)
-{
- char packet[sizeof(struct ip_header) * 2 +
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct udp_header)];
- struct ip_header ip_pkt;
- struct icmp_ttl_exceeded_header icmp_pkt;
- struct udp_header udp_pkt;
- struct sockaddr_in dst;
- size_t off;
- int err;
-
- /* ip header: send to (known) ip address */
- off = 0;
- ip_pkt.vers_ihl = 0x45;
- ip_pkt.tos = 0;
- ip_pkt.pkt_len = htons(sizeof(packet));
- ip_pkt.id = htons(256);
- ip_pkt.flags_frag_offset = 0;
- ip_pkt.ttl = 128;
- ip_pkt.proto = IPPROTO_ICMP;
- ip_pkt.checksum = 0;
- ip_pkt.src_ip = my_ip->s_addr;
- ip_pkt.dst_ip = other->s_addr;
- ip_pkt.checksum =
- htons(calc_checksum((uint16_t *)&ip_pkt, sizeof(struct ip_header)));
- GNUNET_memcpy(&packet[off], &ip_pkt, sizeof(struct ip_header));
- off += sizeof(struct ip_header);
-
- icmp_pkt.type = ICMP_TIME_EXCEEDED;
- icmp_pkt.code = 0;
- icmp_pkt.checksum = 0;
- icmp_pkt.unused = 0;
- GNUNET_memcpy(&packet[off], &icmp_pkt, sizeof(struct icmp_ttl_exceeded_header));
- off += sizeof(struct icmp_ttl_exceeded_header);
-
- /* ip header of the presumably 'lost' udp packet */
- ip_pkt.vers_ihl = 0x45;
- ip_pkt.tos = 0;
- ip_pkt.pkt_len =
- htons(sizeof(struct ip_header) + sizeof(struct udp_header));
- ip_pkt.id = htons(0);
- ip_pkt.flags_frag_offset = 0;
- ip_pkt.ttl = 128;
- ip_pkt.proto = IPPROTO_UDP;
- ip_pkt.checksum = 0;
- ip_pkt.src_ip = other->s_addr;
- ip_pkt.dst_ip = dummy.s_addr;
- ip_pkt.checksum =
- htons(calc_checksum((uint16_t *)&ip_pkt, sizeof(struct ip_header)));
- GNUNET_memcpy(&packet[off], &ip_pkt, sizeof(struct ip_header));
- off += sizeof(struct ip_header);
-
- /* build UDP header */
- udp_pkt.src_port = htons(NAT_TRAV_PORT);
- udp_pkt.dst_port = htons(NAT_TRAV_PORT);
- udp_pkt.length = htons(port);
- udp_pkt.crc = 0;
- GNUNET_memcpy(&packet[off], &udp_pkt, sizeof(struct udp_header));
- off += sizeof(struct udp_header);
-
- /* no go back to calculate ICMP packet checksum */
- icmp_pkt.checksum =
- htons(calc_checksum
- ((uint16_t *)&packet[off],
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct ip_header) + sizeof(struct udp_header)));
- GNUNET_memcpy(&packet[sizeof(struct ip_header)], &icmp_pkt,
- sizeof(struct icmp_ttl_exceeded_header));
-
- memset(&dst, 0, sizeof(dst));
- dst.sin_family = AF_INET;
- dst.sin_addr = *other;
- err =
- sendto(rawsock, packet, sizeof(packet), 0, (struct sockaddr *)&dst,
- sizeof(dst));
- if (err < 0)
- {
- fprintf(stderr, "sendto failed: %s\n", strerror(errno));
- }
- else if (sizeof(packet) != (size_t)err)
- {
- fprintf(stderr, "Error: partial send of ICMP message\n");
- }
-}
-
-
-/**
- * Send an ICMP message to the target.
- *
- * @param my_ip source address
- * @param other target address
- */
-static void
-send_icmp(const struct in_addr *my_ip, const struct in_addr *other)
-{
- struct ip_header ip_pkt;
- struct icmp_ttl_exceeded_header icmp_ttl;
- struct icmp_echo_header icmp_echo;
- struct sockaddr_in dst;
- char packet[sizeof(struct ip_header) * 2 +
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct icmp_echo_header)];
- size_t off;
- int err;
-
- /* ip header: send to (known) ip address */
- off = 0;
- ip_pkt.vers_ihl = 0x45;
- ip_pkt.tos = 0;
- ip_pkt.pkt_len = htons(sizeof(packet));
- ip_pkt.id = htons(256);
- ip_pkt.flags_frag_offset = 0;
- ip_pkt.ttl = IPDEFTTL;
- ip_pkt.proto = IPPROTO_ICMP;
- ip_pkt.checksum = 0;
- ip_pkt.src_ip = my_ip->s_addr;
- ip_pkt.dst_ip = other->s_addr;
- ip_pkt.checksum =
- htons(calc_checksum((uint16_t *)&ip_pkt, sizeof(struct ip_header)));
- GNUNET_memcpy(&packet[off], &ip_pkt, sizeof(struct ip_header));
- off += sizeof(ip_pkt);
-
- /* icmp reply: time exceeded */
- icmp_ttl.type = ICMP_TIME_EXCEEDED;
- icmp_ttl.code = 0;
- icmp_ttl.checksum = 0;
- icmp_ttl.unused = 0;
- GNUNET_memcpy(&packet[off], &icmp_ttl, sizeof(struct icmp_ttl_exceeded_header));
- off += sizeof(struct icmp_ttl_exceeded_header);
-
- /* ip header of the presumably 'lost' udp packet */
- ip_pkt.vers_ihl = 0x45;
- ip_pkt.tos = 0;
- ip_pkt.pkt_len =
- htons(sizeof(struct ip_header) + sizeof(struct icmp_echo_header));
- ip_pkt.id = htons(256);
- ip_pkt.flags_frag_offset = 0;
- ip_pkt.ttl = 1; /* real TTL would be 1 on a time exceeded packet */
- ip_pkt.proto = IPPROTO_ICMP;
- ip_pkt.src_ip = other->s_addr;
- ip_pkt.dst_ip = dummy.s_addr;
- ip_pkt.checksum = 0;
- ip_pkt.checksum =
- htons(calc_checksum((uint16_t *)&ip_pkt, sizeof(struct ip_header)));
- GNUNET_memcpy(&packet[off], &ip_pkt, sizeof(struct ip_header));
- off += sizeof(struct ip_header);
-
- icmp_echo.type = ICMP_ECHO;
- icmp_echo.code = 0;
- icmp_echo.reserved = htonl(port);
- icmp_echo.checksum = 0;
- icmp_echo.checksum =
- htons(calc_checksum
- ((uint16_t *)&icmp_echo, sizeof(struct icmp_echo_header)));
- GNUNET_memcpy(&packet[off], &icmp_echo, sizeof(struct icmp_echo_header));
-
- /* no go back to calculate ICMP packet checksum */
- off = sizeof(struct ip_header);
- icmp_ttl.checksum =
- htons(calc_checksum
- ((uint16_t *)&packet[off],
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct ip_header) + sizeof(struct icmp_echo_header)));
- GNUNET_memcpy(&packet[off], &icmp_ttl, sizeof(struct icmp_ttl_exceeded_header));
-
- memset(&dst, 0, sizeof(dst));
- dst.sin_family = AF_INET;
- dst.sin_addr = *other;
-
- err =
- sendto(rawsock, packet, sizeof(packet), 0, (struct sockaddr *)&dst,
- sizeof(dst));
-
- if (err < 0)
- {
- fprintf(stderr, "sendto failed: %s\n", strerror(errno));
- }
- else if (sizeof(packet) != (size_t)err)
- {
- fprintf(stderr, "Error: partial send of ICMP message\n");
- }
-}
-
-
-/**
- * Create an ICMP raw socket.
- *
- * @return INVALID_SOCKET on error
- */
-static _win_socket
-make_raw_socket()
-{
- DWORD bOptVal = TRUE;
- int bOptLen = sizeof(bOptVal);
- _win_socket ret;
-
- ret = _win_socket(AF_INET, SOCK_RAW, IPPROTO_RAW);
- if (INVALID_SOCKET == ret)
- {
- fprintf(stderr, "Error opening RAW socket: %s\n", strerror(errno));
- return INVALID_SOCKET;
- }
- if (0 !=
- _win_setsockopt(ret, SOL_SOCKET, SO_BROADCAST, (char *)&bOptVal, bOptLen))
- {
- fprintf(stderr, "Error setting SO_BROADCAST to ON: %s\n",
- strerror(errno));
- closesocket(rawsock);
- return INVALID_SOCKET;
- }
-
- if (0 != _win_setsockopt(ret, IPPROTO_IP, IP_HDRINCL, (char *)&bOptVal, bOptLen))
- {
- fprintf(stderr, "Error setting IP_HDRINCL to ON: %s\n", strerror(errno));
- closesocket(rawsock);
- return INVALID_SOCKET;
- }
- return ret;
-}
-
-
-int
-main(int argc, char *const *argv)
-{
- struct in_addr external;
- struct in_addr target;
- WSADATA wsaData;
- unsigned int p;
-
- if (argc > 1 && 0 != strcmp(argv[1], "-d"))
- {
- privilege_testing = TRUE;
- fprintf(stderr,
- "%s",
- "DEBUG: Running binary in privilege testing mode.");
- argv++;
- argc--;
- }
-
- if (argc != 4)
- {
- fprintf(stderr,
- "%s",
- "This program must be started with our IP, the targets external IP, and our port as arguments.\n");
- return 1;
- }
- if ((1 != inet_pton(AF_INET, argv[1], &external)) ||
- (1 != inet_pton(AF_INET, argv[2], &target)))
- {
- fprintf(stderr,
- "Error parsing IPv4 address: %s\n",
- strerror(errno));
- return 1;
- }
- if ((1 != sscanf(argv[3], "%u", &p)) || (0 == p) || (0xFFFF < p))
- {
- fprintf(stderr,
- "Error parsing port value `%s'\n",
- argv[3]);
- return 1;
- }
- port = (uint16_t)p;
-
- if (0 != WSAStartup(MAKEWORD(2, 1), &wsaData))
- {
- fprintf(stderr,
- "%s",
- "Failed to find Winsock 2.1 or better.\n");
- return 2;
- }
- if (1 != inet_pton(AF_INET, DUMMY_IP, &dummy))
- {
- fprintf(stderr,
- "%s",
- "Internal error converting dummy IP to binary.\n");
- return 2;
- }
- if (-1 == (rawsock = make_raw_socket()))
- return 3;
- if (!privilege_testing)
- {
- send_icmp(&external, &target);
- send_icmp_udp(&external, &target);
- }
- closesocket(rawsock);
- WSACleanup();
- return 0;
-}
-
-/* end of gnunet-helper-nat-client-windows.c */
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2010 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @file src/nat/gnunet-helper-nat-server-windows.c
- * @brief Windows tool to help bypass NATs using ICMP method
- * This code will work under W32 only
- * @author Christian Grothoff
- *
- * This program will send ONE ICMP message every 500 ms RAW sockets
- * to a DUMMY IP address and also listens for ICMP replies. Since
- * it uses RAW sockets, it must be run as an administrative user.
- * In order to keep the security risk of the resulting binary
- * minimal, the program ONLY opens the two RAW sockets with administrative
- * privileges, then drops them and only then starts to process
- * command line arguments. The code also does not link against
- * any shared libraries (except libc) and is strictly minimal
- * (except for checking for errors). The following list of people
- * have reviewed this code and considered it safe since the last
- * modification (if you reviewed it, please have your name added
- * to the list):
- *
- * - Nathan Evans
- * - Christian Grothoff
- */
-#define _GNU_SOURCE
-/* Instead of including gnunet_common.h */
-#define GNUNET_memcpy(dst, src, n) do { if (0 != n) { (void)memcpy(dst, src, n); } } while (0)
-
-#define FD_SETSIZE 1024
-#include <winsock2.h>
-#include <ws2tcpip.h>
-#include <sys/time.h>
-#include <sys/types.h>
-#include <unistd.h>
-#include <stdio.h>
-#include <string.h>
-#include <errno.h>
-#include <stdlib.h>
-#include <stdint.h>
-#include <time.h>
-
-/**
- * Should we print some debug output?
- */
-#define VERBOSE 0
-
-/**
- * Must match IP given in the client.
- */
-#define DUMMY_IP "192.0.2.86"
-
-/**
- * Default Port
- */
-#define NAT_TRAV_PORT 22225
-
-/**
- * Must match packet ID used by gnunet-helper-nat-client.c
- */
-#define PACKET_ID 256
-
-/**
- * TTL to use for our outgoing messages.
- */
-#define IPDEFTTL 64
-
-#define ICMP_ECHO 8
-
-#define ICMP_TIME_EXCEEDED 11
-
-/**
- * How often do we send our ICMP messages to receive replies?
- */
-#define ICMP_SEND_FREQUENCY_MS 500
-
-/**
- * IPv4 header.
- */
-struct ip_header {
- /**
- * Version (4 bits) + Internet header length (4 bits)
- */
- uint8_t vers_ihl;
-
- /**
- * Type of service
- */
- uint8_t tos;
-
- /**
- * Total length
- */
- uint16_t pkt_len;
-
- /**
- * Identification
- */
- uint16_t id;
-
- /**
- * Flags (3 bits) + Fragment offset (13 bits)
- */
- uint16_t flags_frag_offset;
-
- /**
- * Time to live
- */
- uint8_t ttl;
-
- /**
- * Protocol
- */
- uint8_t proto;
-
- /**
- * Header checksum
- */
- uint16_t checksum;
-
- /**
- * Source address
- */
- uint32_t src_ip;
-
- /**
- * Destination address
- */
- uint32_t dst_ip;
-};
-
-/**
- * Format of ICMP packet.
- */
-struct icmp_ttl_exceeded_header {
- uint8_t type;
-
- uint8_t code;
-
- uint16_t checksum;
-
- uint32_t unused;
-
- /* followed by original payload */
-};
-
-struct icmp_echo_header {
- uint8_t type;
-
- uint8_t code;
-
- uint16_t checksum;
-
- uint32_t reserved;
-};
-
-/**
- * Beginning of UDP packet.
- */
-struct udp_header {
- uint16_t src_port;
-
- uint16_t dst_port;
-
- uint16_t length;
-
- uint16_t crc;
-};
-
-/**
- * Will this binary be run in permissions testing mode?
- */
-static boolean privilege_testing = FALSE;
-
-/**
- * Socket we use to receive "fake" ICMP replies.
- */
-static _win_socket icmpsock;
-
-/**
- * Socket we use to send our ICMP requests.
- */
-static _win_socket rawsock;
-
-/**
- * Socket we use to send our UDP requests.
- */
-static _win_socket udpsock;
-
-/**
- * Target "dummy" address.
- */
-static struct in_addr dummy;
-
-
-/**
- * CRC-16 for IP/ICMP headers.
- *
- * @param data what to calculate the CRC over
- * @param bytes number of bytes in data (must be multiple of 2)
- * @return the CRC 16.
- */
-static uint16_t
-calc_checksum(const uint16_t * data, unsigned int bytes)
-{
- uint32_t sum;
- unsigned int i;
-
- sum = 0;
- for (i = 0; i < bytes / 2; i++)
- sum += data[i];
- sum = (sum & 0xffff) + (sum >> 16);
- sum = htons(0xffff - sum);
- return sum;
-}
-
-
-/**
- * Convert IPv4 address from text to binary form.
- *
- * @param af address family
- * @param cp the address to print
- * @param buf where to write the address result
- * @return 1 on success
- */
-static int
-inet_pton(int af, const char *cp, struct in_addr *buf)
-{
- buf->s_addr = inet_addr(cp);
- if (buf->s_addr == INADDR_NONE)
- {
- fprintf(stderr, "Error %d handling address %s", WSAGetLastError(), cp);
- return 0;
- }
- return 1;
-}
-
-
-/**
- * Send an ICMP message to the dummy IP.
- *
- * @param my_ip source address (our ip address)
- */
-static void
-send_icmp_echo(const struct in_addr *my_ip)
-{
- char packet[sizeof(struct ip_header) + sizeof(struct icmp_echo_header)];
- struct icmp_echo_header icmp_echo;
- struct ip_header ip_pkt;
- struct sockaddr_in dst;
- size_t off;
- int err;
-
- off = 0;
- ip_pkt.vers_ihl = 0x45;
- ip_pkt.tos = 0;
- ip_pkt.pkt_len = htons(sizeof(packet));
- ip_pkt.id = htons(PACKET_ID);
- ip_pkt.flags_frag_offset = 0;
- ip_pkt.ttl = IPDEFTTL;
- ip_pkt.proto = IPPROTO_ICMP;
- ip_pkt.checksum = 0;
- ip_pkt.src_ip = my_ip->s_addr;
- ip_pkt.dst_ip = dummy.s_addr;
- ip_pkt.checksum =
- htons(calc_checksum((uint16_t *)&ip_pkt, sizeof(struct ip_header)));
- GNUNET_memcpy(&packet[off], &ip_pkt, sizeof(struct ip_header));
- off += sizeof(struct ip_header);
-
- icmp_echo.type = ICMP_ECHO;
- icmp_echo.code = 0;
- icmp_echo.reserved = 0;
- icmp_echo.checksum = 0;
- icmp_echo.checksum =
- htons(calc_checksum
- ((uint16_t *)&icmp_echo, sizeof(struct icmp_echo_header)));
- GNUNET_memcpy(&packet[off], &icmp_echo, sizeof(struct icmp_echo_header));
- off += sizeof(struct icmp_echo_header);
-
- memset(&dst, 0, sizeof(dst));
- dst.sin_family = AF_INET;
- dst.sin_addr = dummy;
- err =
- sendto(rawsock, packet, off, 0, (struct sockaddr *)&dst, sizeof(dst));
- if (err < 0)
- {
-#if VERBOSE
- fprintf(stderr, "sendto failed: %s\n", strerror(errno));
-#endif
- }
- else if (err != off)
- {
- fprintf(stderr, "Error: partial send of ICMP message\n");
- }
-}
-
-
-/**
- * Send a UDP message to the dummy IP.
- */
-static void
-send_udp()
-{
- struct sockaddr_in dst;
- ssize_t err;
-
- memset(&dst, 0, sizeof(dst));
- dst.sin_family = AF_INET;
- dst.sin_addr = dummy;
- dst.sin_port = htons(NAT_TRAV_PORT);
- err = sendto(udpsock, NULL, 0, 0, (struct sockaddr *)&dst, sizeof(dst));
- if (err < 0)
- {
-#if VERBOSE
- fprintf(stderr, "sendto failed: %s\n", strerror(errno));
-#endif
- }
- else if (0 != err)
- {
- fprintf(stderr, "Error: partial send of ICMP message\n");
- }
-}
-
-
-/**
- * We've received an ICMP response. Process it.
- */
-static void
-process_icmp_response()
-{
- char buf[65536];
- ssize_t have;
- struct in_addr source_ip;
- struct ip_header ip_pkt;
- struct icmp_ttl_exceeded_header icmp_ttl;
- struct icmp_echo_header icmp_echo;
- struct udp_header udp_pkt;
- size_t off;
- uint16_t port;
- DWORD ssize;
-
- have = read(icmpsock, buf, sizeof(buf));
- if (have == -1)
- {
- fprintf(stderr, "Error reading raw socket: %s\n", strerror(errno));
- return;
- }
-#if VERBOSE
- fprintf(stderr, "Received message of %u bytes\n", (unsigned int)have);
-#endif
- if (have <
- (ssize_t)(sizeof(struct ip_header) +
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct ip_header)))
- {
- /* malformed */
- return;
- }
- off = 0;
- GNUNET_memcpy(&ip_pkt, &buf[off], sizeof(struct ip_header));
- off += sizeof(struct ip_header);
- GNUNET_memcpy(&source_ip, &ip_pkt.src_ip, sizeof(source_ip));
- GNUNET_memcpy(&icmp_ttl, &buf[off], sizeof(struct icmp_ttl_exceeded_header));
- off += sizeof(struct icmp_ttl_exceeded_header);
- if ((ICMP_TIME_EXCEEDED != icmp_ttl.type) || (0 != icmp_ttl.code))
- {
- /* different type than what we want */
- return;
- }
- /* skip 2nd IP header */
- GNUNET_memcpy(&ip_pkt, &buf[off], sizeof(struct ip_header));
- off += sizeof(struct ip_header);
-
- switch (ip_pkt.proto)
- {
- case IPPROTO_ICMP:
- if (have !=
- (sizeof(struct ip_header) * 2 +
- sizeof(struct icmp_ttl_exceeded_header) +
- sizeof(struct icmp_echo_header)))
- {
- /* malformed */
- return;
- }
- /* grab ICMP ECHO content */
- GNUNET_memcpy(&icmp_echo, &buf[off], sizeof(struct icmp_echo_header));
- port = (uint16_t)ntohl(icmp_echo.reserved);
- break;
-
- case IPPROTO_UDP:
- if (have !=
- (sizeof(struct ip_header) * 2 +
- sizeof(struct icmp_ttl_exceeded_header) + sizeof(struct udp_header)))
- {
- /* malformed */
- return;
- }
- /* grab UDP content */
- GNUNET_memcpy(&udp_pkt, &buf[off], sizeof(struct udp_header));
- port = ntohs(udp_pkt.length);
- break;
-
- default:
- /* different type than what we want */
- return;
- }
-
- ssize = sizeof(buf);
- WSAAddressToString((LPSOCKADDR)&source_ip, sizeof(source_ip), NULL, buf,
- &ssize);
- if (port == 0)
- fprintf(stdout, "%s\n", buf);
- else
- fprintf(stdout, "%s:%u\n", buf, (unsigned int)port);
- fflush(stdout);
-}
-
-
-/**
- * Create an ICMP raw socket for reading.
- *
- * @return INVALID_SOCKET on error
- */
-static _win_socket
-make_icmp_socket()
-{
- _win_socket ret;
-
- ret = _win_socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
- if (INVALID_SOCKET == ret)
- {
- fprintf(stderr, "Error opening RAW socket: %s\n", strerror(errno));
- return INVALID_SOCKET;
- }
- return ret;
-}
-
-
-/**
- * Create an ICMP raw socket for writing.
- *
- * @return INVALID_SOCKET on error
- */
-static _win_socket
-make_raw_socket()
-{
- DWORD bOptVal = TRUE;
- int bOptLen = sizeof(bOptVal);
-
- rawsock = _win_socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
- if (INVALID_SOCKET == rawsock)
- {
- fprintf(stderr, "Error opening RAW socket: %s\n", strerror(errno));
- return INVALID_SOCKET;
- }
-
- if (0 !=
- _win_setsockopt(rawsock, SOL_SOCKET, SO_BROADCAST, (char *)&bOptVal,
- bOptLen))
- {
- fprintf(stderr, "Error setting SO_BROADCAST to ON: %s\n",
- strerror(errno));
- closesocket(rawsock);
- return INVALID_SOCKET;
- }
- if (0 !=
- _win_setsockopt(rawsock, IPPROTO_IP, IP_HDRINCL, (char *)&bOptVal, bOptLen))
- {
- fprintf(stderr, "Error setting IP_HDRINCL to ON: %s\n", strerror(errno));
- closesocket(rawsock);
- return INVALID_SOCKET;
- }
- return rawsock;
-}
-
-
-/**
- * Create a UDP socket for writing.
- *
- * @param my_ip source address (our ip address)
- * @return INVALID_SOCKET on error
- */
-static _win_socket
-make_udp_socket(const struct in_addr *my_ip)
-{
- _win_socket ret;
- struct sockaddr_in addr;
-
- ret = _win_socket(AF_INET, SOCK_DGRAM, 0);
- if (INVALID_SOCKET == ret)
- {
- fprintf(stderr, "Error opening UDP socket: %s\n", strerror(errno));
- return INVALID_SOCKET;
- }
- memset(&addr, 0, sizeof(addr));
- addr.sin_family = AF_INET;
- addr.sin_addr = *my_ip;
- addr.sin_port = htons(NAT_TRAV_PORT);
- if (0 != bind(ret, (struct sockaddr *)&addr, sizeof(addr)))
- {
- fprintf(stderr, "Error binding UDP socket to port %u: %s\n", NAT_TRAV_PORT,
- strerror(errno));
- /* likely problematic, but not certain, try to continue */
- }
- return ret;
-}
-
-
-int
-main(int argc, char *const *argv)
-{
- struct in_addr external;
- fd_set rs;
- struct timeval tv;
- WSADATA wsaData;
- unsigned int alt = 0;
-
- if ((argc > 1) && (0 != strcmp(argv[1], "-d")))
- {
- privilege_testing = TRUE;
- fprintf(stderr,
- "%s",
- "DEBUG: Running binary in privilege testing mode.");
- argv++;
- argc--;
- }
-
- if (2 != argc)
- {
- fprintf(stderr,
- "This program must be started with our (internal NAT) IP as the only argument.\n");
- return 1;
- }
- if (1 != inet_pton(AF_INET, argv[1], &external))
- {
- fprintf(stderr, "Error parsing IPv4 address: %s, error %s\n", argv[1],
- strerror(errno));
- return 1;
- }
- if (1 != inet_pton(AF_INET, DUMMY_IP, &dummy))
- {
- fprintf(stderr, "Internal error converting dummy IP to binary.\n");
- return 2;
- }
- if (WSAStartup(MAKEWORD(2, 1), &wsaData) != 0)
- {
- fprintf(stderr, "Failed to find Winsock 2.1 or better.\n");
- return 2;
- }
- if (INVALID_SOCKET == (icmpsock = make_icmp_socket()))
- {
- return 3;
- }
- if (INVALID_SOCKET == (make_raw_socket()))
- {
- closesocket(icmpsock);
- return 3;
- }
- if (INVALID_SOCKET == (udpsock = make_udp_socket(&external)))
- {
- closesocket(icmpsock);
- closesocket(rawsock);
- return 3;
- }
-
- while (!privilege_testing)
- {
- FD_ZERO(&rs);
- FD_SET(icmpsock, &rs);
- tv.tv_sec = 0;
- tv.tv_usec = ICMP_SEND_FREQUENCY_MS * 1000;
- if (-1 == select(icmpsock + 1, &rs, NULL, NULL, &tv))
- {
- if (errno == EINTR)
- continue;
- fprintf(stderr, "select failed: %s\n", strerror(errno));
- break;
- }
- if (FD_ISSET(icmpsock, &rs))
- process_icmp_response();
- if (0 == (++alt % 2))
- send_icmp_echo(&external);
- else
- send_udp();
- }
- /* select failed (internal error or OS out of resources) */
- closesocket(icmpsock);
- closesocket(rawsock);
- closesocket(udpsock);
- WSACleanup();
- if (privilege_testing)
- return 0;
- return 4;
-}
-
-
-/* end of gnunet-helper-nat-server-windows.c */
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols -lole32 -lshell32 -liconv -lstdc++ -lcomdlg32 -lgdi32
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
pkgcfg_DATA = \
peerinfo.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols -lole32 -lshell32 -liconv -lstdc++ -lcomdlg32 -lgdi32
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
dist_pkgcfg_DATA = \
peerstore.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include $(POSTGRESQL_CPPFLAGS)
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
endif
test_gnunet_vpn-4_over \
test_gns_vpn
endif
-if MINGW
- VPN_TEST = \
- test_gnunet_vpn-4_to_6 \
- test_gnunet_vpn-6_to_4 \
- test_gnunet_vpn-6_over \
- test_gnunet_vpn-4_over
-endif
else
if HAVE_LIBCURL
LIB_GNURL=@LIBCURL@
test_gnunet_vpn-4_over \
test_gns_vpn
endif
-if MINGW
- VPN_TEST = \
- test_gnunet_vpn-4_to_6 \
- test_gnunet_vpn-6_to_4 \
- test_gnunet_vpn-6_over \
- test_gnunet_vpn-4_over
-endif
endif
endif
char *exit_binary;
int ret = 0;
-#ifndef MINGW
if (0 != access("/dev/net/tun", R_OK))
{
GNUNET_log_strerror_file(GNUNET_ERROR_TYPE_ERROR,
"WARNING: System unable to run test, skipping.\n");
return 77;
}
-#endif
+
vpn_binary = GNUNET_OS_get_libexec_binary_path("gnunet-helper-vpn");
exit_binary = GNUNET_OS_get_libexec_binary_path("gnunet-helper-exit");
if ((GNUNET_YES != (ret = GNUNET_OS_check_helper_binary(vpn_binary, GNUNET_YES, "-d gnunet-vpn - - 169.1.3.3.7 255.255.255.0"))) || //ipv4 only please!
libexecdir= $(pkglibdir)/libexec/
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
plugindir = $(libdir)/gnunet
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
pkgcfg_DATA = \
rest.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov
plugindir = $(libdir)/gnunet
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
pkgcfg_DATA = \
scalarproduct.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
pkgcfg_DATA = \
secretsharing.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
pkgcfg_DATA = \
set.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
dist_pkgcfg_DATA = \
template.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = -fprofile-arcs -ftest-coverage
endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
}
#endif
-#if MINGW
- /* Win NT? */
- if (GNNtQuerySystemInformation)
- {
- static double dLastKernel;
- static double dLastIdle;
- static double dLastUser;
- double dKernel;
- double dIdle;
- double dUser;
- double dDiffKernel;
- double dDiffIdle;
- double dDiffUser;
- SYSTEM_PROCESSOR_PERFORMANCE_INFORMATION theInfo;
-
- if (GNNtQuerySystemInformation(SystemProcessorPerformanceInformation,
- &theInfo,
- sizeof(theInfo), NULL) == NO_ERROR)
- {
- /* PORT-ME MINGW: Multi-processor? */
- dKernel = Li2Double(theInfo.KernelTime);
- dIdle = Li2Double(theInfo.IdleTime);
- dUser = Li2Double(theInfo.UserTime);
- dDiffKernel = dKernel - dLastKernel;
- dDiffIdle = dIdle - dLastIdle;
- dDiffUser = dUser - dLastUser;
-
- if (((dDiffKernel + dDiffUser) > 0) &&
- (dLastIdle + dLastKernel + dLastUser > 0))
- currentCPULoad =
- 100.0 - (dDiffIdle / (dDiffKernel + dDiffUser)) * 100.0;
- else
- currentCPULoad = -1; /* don't know (yet) */
-
- dLastKernel = dKernel;
- dLastIdle = dIdle;
- dLastUser = dUser;
-
- currentIOLoad = -1; /* FIXME-MINGW */
- return GNUNET_OK;
- }
- else
- {
- /* only warn once, if there is a problem with
- NtQuery..., we're going to hit it frequently... */
- static int once;
- if (once == 0)
- {
- once = 1;
- GNUNET_log(GNUNET_ERROR_TYPE_WARNING,
- "Cannot query the CPU usage (Windows NT).\n");
- }
- return GNUNET_SYSERR;
- }
- }
- else
- { /* Win 9x */
- HKEY hKey;
- DWORD dwDataSize, dwType, dwDummy;
-
- /* Start query */
- if (RegOpenKeyEx(HKEY_DYN_DATA,
- "PerfStats\\StartSrv",
- 0, KEY_ALL_ACCESS, &hKey) != ERROR_SUCCESS)
- {
- /* only warn once */
- static int once = 0;
- if (once == 0)
- {
- once = 1;
- GNUNET_log(GNUNET_ERROR_TYPE_WARNING,
- "Cannot query the CPU usage (Win 9x)\n");
- }
- }
-
- RegOpenKeyEx(HKEY_DYN_DATA,
- "PerfStats\\StartStat", 0, KEY_ALL_ACCESS, &hKey);
- dwDataSize = sizeof(dwDummy);
- RegQueryValueEx(hKey,
- "KERNEL\\CPUUsage",
- NULL, &dwType, (LPBYTE)&dwDummy, &dwDataSize);
- RegCloseKey(hKey);
-
- /* Get CPU usage */
- RegOpenKeyEx(HKEY_DYN_DATA,
- "PerfStats\\StatData", 0, KEY_ALL_ACCESS, &hKey);
- dwDataSize = sizeof(currentCPULoad);
- RegQueryValueEx(hKey,
- "KERNEL\\CPUUsage",
- NULL, &dwType, (LPBYTE)¤tCPULoad, &dwDataSize);
- RegCloseKey(hKey);
- currentIOLoad = -1; /* FIXME-MINGW! */
-
- /* Stop query */
- RegOpenKeyEx(HKEY_DYN_DATA,
- "PerfStats\\StopStat", 0, KEY_ALL_ACCESS, &hKey);
- RegOpenKeyEx(HKEY_DYN_DATA,
- "PerfStats\\StopSrv", 0, KEY_ALL_ACCESS, &hKey);
- dwDataSize = sizeof(dwDummy);
- RegQueryValueEx(hKey,
- "KERNEL\\CPUUsage",
- NULL, &dwType, (LPBYTE)&dwDummy, &dwDataSize);
- RegCloseKey(hKey);
-
- return GNUNET_OK;
- }
-#endif
-
/* loadaverage not defined and no platform
specific alternative defined
=> default: error
char *fn;
size_t len;
-#if MINGW
- GNUNET_log(GNUNET_ERROR_TYPE_WARNING,
- "Load statistics logging now available for windows\n");
- return; /* No logging on windows for now :( */
-#endif
-
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_filename(cfg, "testbed",
"STATS_DIR", &stats_dir))
void
GST_stats_destroy()
{
-#if MINGW
- return;
-#endif
if (NULL == bw)
return;
#ifdef LINUX
}
testname++;
testname = GNUNET_strdup(testname);
-#ifdef MINGW
- {
- char *period;
-
- /* check and remove .exe extension */
- period = strrchr(testname, (int)'.');
- if (NULL != period)
- *period = '\0';
- else
- GNUNET_break(0); /* Windows with no .exe? */
- }
-#endif
+
if (0 == strcmp("waitforever", testname))
wait_forever = GNUNET_YES;
if ((GNUNET_YES != wait_forever) && (0 != strcmp("run", testname)))
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIB = -lgcov
BT_QUOTA_TEST = test_quota_compliance_bluetooth \
test_quota_compliance_bluetooth_asymmetric
endif
-else
-if MINGW
- BT_BIN = gnunet-helper-transport-bluetooth
- BT_PLUGIN_LA = libgnunet_plugin_transport_bluetooth.la
-endif
endif
# end of HAVE_EXPERIMENTAL
endif
-if !MINGW
UNIX_PLUGIN_LA = libgnunet_plugin_transport_unix.la
UNIX_PLUGIN_TEST = test_transport_api_unix
UNIX_TEST = test_plugin_unix
if LINUX
UNIX_API_ABSTRACT_TEST = test_transport_api_unix_abstract
endif
-endif
+
noinst_PROGRAMS = \
gnunet-transport-profiler \
gnunet_helper_transport_bluetooth_SOURCES = \
gnunet-helper-transport-bluetooth.c
-if MINGW
- gnunet_helper_transport_bluetooth_LDADD = \
- $(top_builddir)/src/util/libgnunetutil.la
- gnunet_helper_transport_bluetooth_LDFLAGS = -lws2_32
-else
- gnunet_helper_transport_bluetooth_LDFLAGS = -lbluetooth
-endif
+
+gnunet_helper_transport_bluetooth_LDFLAGS = -lbluetooth
+
gnunet_transport_profiler_SOURCES = \
gnunet-transport-profiler.c
*/
#include "gnunet_config.h"
-#ifdef MINGW
- #include "platform.h"
- #include "gnunet_util_lib.h"
- #include <bthdef.h>
- #include <ws2bth.h>
-#else
- #define SOCKTYPE int
- #include <bluetooth/bluetooth.h>
- #include <bluetooth/hci.h>
- #include <bluetooth/hci_lib.h>
- #include <bluetooth/rfcomm.h>
- #include <bluetooth/sdp.h>
- #include <bluetooth/sdp_lib.h>
- #include <errno.h>
- #include <linux/if.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <sys/ioctl.h>
- #include <sys/param.h>
- #include <sys/socket.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
-#endif
+#define SOCKTYPE int
+#include <bluetooth/bluetooth.h>
+#include <bluetooth/hci.h>
+#include <bluetooth/hci_lib.h>
+#include <bluetooth/rfcomm.h>
+#include <bluetooth/sdp.h>
+#include <bluetooth/sdp_lib.h>
+#include <errno.h>
+#include <linux/if.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/ioctl.h>
+#include <sys/param.h>
+#include <sys/socket.h>
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
#include "plugin_transport_wlan.h"
#include "gnunet_protocols.h"
*/
#define MAX_LOOPS 5
-#ifdef MINGW
-/* Maximum size of the interface's name */
- #define IFNAMSIZ 16
-
- #ifndef NS_BTH
- #define NS_BTH 16
- #endif
-/**
- * A copy of the MAC Address.
- */
-struct GNUNET_TRANSPORT_WLAN_MacAddress_Copy {
- UINT8 mac[MAC_ADDR_SIZE];
-};
-
-/**
- * The UUID used for the SDP service.
- * {31191E56-FA7E-4517-870E-71B86BBCC52F}
- */
- #define GNUNET_BLUETOOTH_SDP_UUID \
- { \
- 0x31, 0x19, 0x1E, 0x56, \
- 0xFA, 0x7E, \
- 0x45, 0x17, \
- 0x87, 0x0E, \
- 0x71, 0xB8, 0x6B, 0xBC, 0xC5, 0x2F \
- }
-#endif
-
/**
* In bluez library, the maximum name length of a device is 8
*/
*/
char iface[IFNAMSIZ];
- #ifdef MINGW
- /**
- * socket handle
- */
- struct GNUNET_NETWORK_Handle *handle;
-
- /**
- * MAC address of our own bluetooth interface.
- */
- struct GNUNET_TRANSPORT_WLAN_MacAddress_Copy pl_mac;
- #else
/**
* file descriptor for the rfcomm socket
*/
* SDP session
*/
sdp_session_t *session;
- #endif
};
/**
/* ************** end of clone ***************** */
-
-#ifdef MINGW
-/**
- * Function used to get the code of last error and to print the type of error.
- */
-static void
-print_last_error()
-{
- LPVOID lpMsgBuf = NULL;
-
- if (FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL, GetLastError(), 0, (LPTSTR)&lpMsgBuf, 0, NULL))
- fprintf(stderr, "%s\n", (char *)lpMsgBuf);
- else
- fprintf(stderr, "Failed to format the message for the last error! Error number : %d\n", GetLastError());
-}
-
-/**
- * Function used to initialize the Windows Sockets
- */
-static void
-initialize_windows_sockets()
-{
- WSADATA wsaData;
- WORD wVersionRequested = MAKEWORD(2, 0);
-
- if (WSAStartup(wVersionRequested, &wsaData) != NO_ERROR)
- {
- fprintf(stderr, "Error initializing window sockets!\n");
- print_last_error();
- ExitProcess(2);
- }
-}
-
-/**
- * Function used to convert the GUID.
- * @param bytes the GUID represented as a char array
- * @param uuid pointer to the GUID
- */
-static void
-convert_guid(char *bytes, GUID * uuid)
-{
- int i;
-
- uuid->Data1 = ((bytes[0] << 24) & 0xff000000) | ((bytes[1] << 16) & 0x00ff0000) | ((bytes[2] << 8) & 0x0000ff00) | (bytes[3] & 0x000000ff);
- uuid->Data2 = ((bytes[4] << 8) & 0xff00) | (bytes[5] & 0x00ff);
- uuid->Data3 = ((bytes[6] << 8) & 0xff00) | (bytes[7] & 0x00ff);
-
- for (i = 0; i < 8; i++)
- {
- uuid->Data4[i] = bytes[i + 8];
- }
-}
-#endif
-
#ifdef LINUX
/**
* Function for assigning a port number
}
#endif
-#ifdef MINGW
-/**
- * Function used for creating the service record and registering it.
- *
- * @param dev pointer to the device struct
- * @return 0 on success
- */
-static int
-register_service(struct HardwareInfos *dev)
-{
- /* advertise the service */
- CSADDR_INFO addr_info;
- WSAQUERYSET wqs;
- GUID guid;
- unsigned char uuid[] = GNUNET_BLUETOOTH_SDP_UUID;
- SOCKADDR_BTH addr;
- int addr_len = sizeof(SOCKADDR_BTH);
- int fd;
-
- /* get the port on which we are listening on */
- memset(&addr, 0, sizeof(SOCKADDR_BTH));
- fd = GNUNET_NETWORK_get_fd(dev->handle);
- if (fd <= 0)
- {
- fprintf(stderr, "Failed to get the file descriptor\n");
- return -1;
- }
- if (SOCKET_ERROR == getsockname(fd, (SOCKADDR*)&addr, &addr_len))
- {
- fprintf(stderr, "Failed to get the port on which we are listening on: \n");
- print_last_error();
- return -1;
- }
-
- /* save the device address */
- GNUNET_memcpy(&dev->pl_mac, &addr.btAddr, sizeof(BTH_ADDR));
-
- /* set the address information */
- memset(&addr_info, 0, sizeof(CSADDR_INFO));
- addr_info.iProtocol = BTHPROTO_RFCOMM;
- addr_info.iSocketType = SOCK_STREAM;
- addr_info.LocalAddr.lpSockaddr = (LPSOCKADDR)&addr;
- addr_info.LocalAddr.iSockaddrLength = sizeof(addr);
- addr_info.RemoteAddr.lpSockaddr = (LPSOCKADDR)&addr;
- addr_info.RemoteAddr.iSockaddrLength = sizeof(addr);
-
- convert_guid((char *)uuid, &guid);
-
- /* register the service */
- memset(&wqs, 0, sizeof(WSAQUERYSET));
- wqs.dwSize = sizeof(WSAQUERYSET);
- wqs.dwNameSpace = NS_BTH;
- wqs.lpszServiceInstanceName = "GNUnet Bluetooth Service";
- wqs.lpszComment = "This is the service used by the GNUnnet plugin transport";
- wqs.lpServiceClassId = &guid;
- wqs.dwNumberOfCsAddrs = 1;
- wqs.lpcsaBuffer = &addr_info;
- wqs.lpBlob = 0;
-
- if (SOCKET_ERROR == WSASetService(&wqs, RNRSERVICE_REGISTER, 0))
- {
- fprintf(stderr, "Failed to register the SDP service: ");
- print_last_error();
- return -1;
- }
- else
- {
- fprintf(stderr, "The SDP service was registered\n");
- }
-
- return 0;
-}
-#else
/**
* Function used for creating the service record and registering it.
*
return 0;
}
-#endif
-#ifdef MINGW
-/**
- * Function for searching and browsing for a service. This will return the
- * port number on which the service is running.
- *
- * @param dest target address
- * @return channel
- */
-static int
-get_channel(const char *dest)
-{
- HANDLE h;
- WSAQUERYSET *wqs;
- DWORD wqs_len = sizeof(WSAQUERYSET);
- int done = 0;
- int channel = -1;
- GUID guid;
- unsigned char uuid[] = GNUNET_BLUETOOTH_SDP_UUID;
-
- convert_guid((char *)uuid, &guid);
-
- wqs = (WSAQUERYSET*)malloc(wqs_len);
- ZeroMemory(wqs, wqs_len);
-
- wqs->dwSize = sizeof(WSAQUERYSET);
- wqs->lpServiceClassId = &guid;
- wqs->dwNameSpace = NS_BTH;
- wqs->dwNumberOfCsAddrs = 0;
- wqs->lpszContext = (LPSTR)dest;
-
- if (SOCKET_ERROR == WSALookupServiceBegin(wqs, LUP_FLUSHCACHE | LUP_RETURN_ALL, &h))
- {
- if (GetLastError() == WSASERVICE_NOT_FOUND)
- {
- fprintf(stderr, "WARNING! The device with address %s wasn't found. Skipping the message!", dest);
- return -1;
- }
- else
- {
- fprintf(stderr, "Failed to find the port number: ");
- print_last_error();
- ExitProcess(2);
- return -1;
- }
- }
-
- /* search the sdp service */
- while (!done)
- {
- if (SOCKET_ERROR == WSALookupServiceNext(h, LUP_FLUSHCACHE | LUP_RETURN_ALL, &wqs_len, wqs))
- {
- int error = WSAGetLastError();
-
- switch (error)
- {
- case WSAEFAULT:
- free(wqs);
- wqs = (WSAQUERYSET*)malloc(wqs_len);
- break;
-
- case WSANO_DATA:
- fprintf(stderr, "Failed! The address was valid but there was no data record of requested type\n");
- done = 1;
- break;
-
- case WSA_E_NO_MORE:
- done = 1;
- break;
-
- default:
- fprintf(stderr, "Failed to look over the services: ");
- print_last_error();
- WSALookupServiceEnd(h);
- ExitProcess(2);
- }
- }
- else
- {
- channel = ((SOCKADDR_BTH*)wqs->lpcsaBuffer->RemoteAddr.lpSockaddr)->port;
- }
- }
-
- free(wqs);
- WSALookupServiceEnd(h);
-
- return channel;
-}
-#else
/**
* Function used for searching and browsing for a service. This will return the
* port number on which the service is running.
return channel;
}
-#endif
/**
* Read from the socket and put the result into the buffer for transmission to 'stdout'.
{
unsigned char tmpbuf[buf_size];
ssize_t count;
-
- #ifdef MINGW
- count = GNUNET_NETWORK_socket_recv((struct GNUNET_NETWORK_Handle *)sock, tmpbuf, buf_size);
- #else
count = read(*((int *)sock), tmpbuf, buf_size);
- #endif
if (0 > count)
{
if (EAGAIN == errno)
return 0;
- #if MINGW
- print_last_error();
- #else
+
fprintf(stderr, "Failed to read from the HCI socket: %s\n", strerror(errno));
- #endif
return -1;
}
static int
open_device(struct HardwareInfos *dev)
{
- #ifdef MINGW
- SOCKADDR_BTH addr;
-
- /* bind the RFCOMM socket to the interface */
- addr.addressFamily = AF_BTH;
- addr.btAddr = 0;
- addr.port = BT_PORT_ANY;
-
- if (GNUNET_OK !=
- GNUNET_NETWORK_socket_bind(dev->handle, (const SOCKADDR*)&addr, sizeof(SOCKADDR_BTH)))
- {
- fprintf(stderr, "Failed to bind the socket: ");
- if (GetLastError() == WSAENETDOWN)
- {
- fprintf(stderr, "Please make sure that your Bluetooth device is ON!\n");
- ExitProcess(2);
- }
- print_last_error();
- return -1;
- }
-
- /* start listening on the socket */
- if (GNUNET_NETWORK_socket_listen(dev->handle, 4) != GNUNET_OK)
- {
- fprintf(stderr, "Failed to listen on the socket: ");
- print_last_error();
- return -1;
- }
-
- /* register the sdp service */
- if (register_service(dev) != 0)
- {
- fprintf(stderr, "Failed to register a service: ");
- print_last_error();
- return 1;
- }
- #else
int i, dev_id = -1, fd_hci;
struct {
struct hci_dev_list_req list;
dev->iface, strerror(errno));
return 1;
}
- #endif
return 0;
}
{
taIeeeHeader->frame_control = htons(IEEE80211_FC0_TYPE_DATA);
taIeeeHeader->addr3 = mac_bssid_gnunet;
-
- #ifdef MINGW
- GNUNET_memcpy(&taIeeeHeader->addr2, &dev->pl_mac, sizeof(struct GNUNET_TRANSPORT_WLAN_MacAddress));
- #else
taIeeeHeader->addr2 = dev->pl_mac;
- #endif
}
#ifdef LINUX
(struct sockaddr *)&addr,
&fromlen);
sa = (const struct sockaddr *)&addr;
-#if MINGW
- /* On SOCK_DGRAM UDP sockets recvfrom might fail with a
- * WSAECONNRESET error to indicate that previous sendto() (yes, sendto!)
- * on this socket has failed.
- * Quote from MSDN:
- * WSAECONNRESET - The virtual circuit was reset by the remote side
- * executing a hard or abortive close. The application should close
- * the socket; it is no longer usable. On a UDP-datagram socket this
- * error indicates a previous send operation resulted in an ICMP Port
- * Unreachable message.
- */
- if ((-1 == size) && (ECONNRESET == errno))
- return;
-#endif
+
if (-1 == size)
{
LOG(GNUNET_ERROR_TYPE_DEBUG,
/**
* Number fo bytes in a mac address.
*/
-#ifdef MINGW
- #define MAC_ADDR_SIZE 8
-typedef uint8_t u_int8_t;
-#else
- #define MAC_ADDR_SIZE 6
-#endif
+#define MAC_ADDR_SIZE 6
/**
* Value for "Management" in the 'frame_control' field of the
}
-#ifdef MINGW
-/**
- * Read listen sockets from the parent process (ARM).
- *
- * @param sctx service context to initialize
- * @return #GNUNET_YES if ok, #GNUNET_NO if not ok (must bind yourself),
- * and #GNUNET_SYSERR on error.
- */
-static int
-receive_sockets_from_parent(struct LEGACY_SERVICE_Context *sctx)
-{
- const char *env_buf;
- int fail;
- uint64_t count;
- uint64_t i;
- HANDLE lsocks_pipe;
-
- env_buf = getenv("GNUNET_OS_READ_LSOCKS");
- if ((NULL == env_buf) || (strlen(env_buf) <= 0))
- return GNUNET_NO;
- /* Using W32 API directly here, because this pipe will
- * never be used outside of this function, and it's just too much of a bother
- * to create a GNUnet API that boxes a HANDLE (the way it is done with socks)
- */
- lsocks_pipe = (HANDLE)strtoul(env_buf, NULL, 10);
- if ((0 == lsocks_pipe) || (INVALID_HANDLE_VALUE == lsocks_pipe))
- return GNUNET_NO;
- fail = 1;
- do
- {
- int ret;
- int fail2;
- DWORD rd;
-
- ret = ReadFile(lsocks_pipe, &count, sizeof(count), &rd, NULL);
- if ((0 == ret) || (sizeof(count) != rd) || (0 == count))
- break;
- sctx->lsocks =
- GNUNET_malloc(sizeof(struct GNUNET_NETWORK_Handle *) * (count + 1));
-
- fail2 = 1;
- for (i = 0; i < count; i++)
- {
- WSAPROTOCOL_INFOA pi;
- uint64_t size;
- socket s;
-
- ret = ReadFile(lsocks_pipe, &size, sizeof(size), &rd, NULL);
- if ((0 == ret) || (sizeof(size) != rd) || (sizeof(pi) != size))
- break;
- ret = ReadFile(lsocks_pipe, &pi, sizeof(pi), &rd, NULL);
- if ((0 == ret) || (sizeof(pi) != rd))
- break;
- s = WSASocketA(pi.iAddressFamily,
- pi.iSocketType,
- pi.iProtocol,
- &pi,
- 0,
- WSA_FLAG_OVERLAPPED);
- sctx->lsocks[i] = GNUNET_NETWORK_socket_box_native(s);
- if (NULL == sctx->lsocks[i])
- break;
- else if (i == count - 1)
- fail2 = 0;
- }
- if (fail2)
- break;
- sctx->lsocks[count] = NULL;
- fail = 0;
- }
- while (fail);
-
- CloseHandle(lsocks_pipe);
-
- if (fail)
- {
- LOG(GNUNET_ERROR_TYPE_ERROR,
- _("Could not access a pre-bound socket, will try to bind myself\n"));
- for (i = 0; (i < count) && (NULL != sctx->lsocks[i]); i++)
- GNUNET_break(0 == GNUNET_NETWORK_socket_close(sctx->lsocks[i]));
- GNUNET_free_non_null(sctx->lsocks);
- sctx->lsocks = NULL;
- return GNUNET_NO;
- }
- return GNUNET_YES;
-}
-#endif
-
-
/**
* Setup addr, addrlen, idle_timeout
* based on configuration!
{
struct GNUNET_TIME_Relative idleout;
int tolerant;
-
-#ifndef MINGW
const char *nfds;
unsigned int cnt;
int flags;
-#endif
if (GNUNET_CONFIGURATION_have_value(sctx->cfg,
sctx->service_name,
else
tolerant = GNUNET_NO;
-#ifndef MINGW
errno = 0;
if ((NULL != (nfds = getenv("LISTEN_FDS"))) &&
(1 == sscanf(nfds, "%u", &cnt)) && (cnt > 0) && (cnt < FD_SETSIZE) &&
}
unsetenv("LISTEN_FDS");
}
-#else
- if (getenv("GNUNET_OS_READ_LSOCKS") != NULL)
- {
- receive_sockets_from_parent(sctx);
- putenv("GNUNET_OS_READ_LSOCKS=");
- }
-#endif
if ((NULL == sctx->lsocks) &&
(GNUNET_SYSERR == LEGACY_SERVICE_get_server_addresses(sctx->service_name,
static int
detach_terminal(struct LEGACY_SERVICE_Context *sctx)
{
-#ifndef MINGW
pid_t pid;
int nullfd;
int filedes[2];
if (-1 == pid)
LOG_STRERROR(GNUNET_ERROR_TYPE_ERROR, "setsid");
sctx->ready_confirm_fd = filedes[1];
-#else
- /* FIXME: we probably need to do something else
- * elsewhere in order to fork the process itself... */
- FreeConsole();
-#endif
+
return GNUNET_OK;
}
if (NULL == (user = get_user_name(sctx)))
return GNUNET_OK; /* keep */
-#ifndef MINGW
+
struct passwd *pws;
errno = 0;
return GNUNET_SYSERR;
}
}
-#endif
+
GNUNET_free(user);
return GNUNET_OK;
}
pkgcfg_DATA = \
resolver.conf
-if MINGW
-noinst_LTLIBRARIES = \
- libgnunetutilwin.la
-libgnunetutilwin_la_SOURCES = \
- win.c \
- winproc.c
-libgnunetutilwin_la_LDFLAGS = \
- -no-undefined -Wl,--export-all-symbols
-libgnunetutilwin_la_LIBADD = \
- -lshell32 -liconv -lstdc++ \
- -lcomdlg32 -lgdi32 -liphlpapi
-WINLIB = libgnunetutilwin.la
-W32CAT = w32cat
-W32CONSOLEHELPER = gnunet-helper-w32-console
-endif
-
-if !MINGW
- TEST_CLIENT_UNIX_NC = test_client_unix.nc
-else
- TEST_CLIENT_UNIX_NC =
-endif
+TEST_CLIENT_UNIX_NC = test_client_unix.nc
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
PTHREAD = -lpthread
endif
-w32cat_SOURCES = w32cat.c
-
-gnunet_helper_w32_console_SOURCES = \
- gnunet-helper-w32-console.c \
- gnunet-helper-w32-console.h
-gnunet_helper_w32_console_LDADD = \
- libgnunetutil.la
-
gnunet_config_diff_SOURCES = \
gnunet-config-diff.c
gnunet_config_diff_LDADD = \
libexec_PROGRAMS = \
gnunet-service-resolver \
- gnunet-timeout \
- $(W32CONSOLEHELPER)
+ gnunet-timeout
bin_PROGRAMS = \
gnunet-resolver \
noinst_PROGRAMS = \
gnunet-config-diff \
- $(W32CAT) \
test_common_logging_dummy
endif
-
-if !MINGW
gnunet_timeout_SOURCES = \
gnunet-timeout.c
-else
-gnunet_timeout_SOURCES = \
- gnunet-timeout-w32.c
-endif
gnunet_service_resolver_SOURCES = \
gnunet-service-resolver.c
test_os_start_process_LDADD = \
libgnunetutil.la
test_os_start_process_DEPENDENCIES = \
- libgnunetutil.la \
- $(WINCAT)
+ libgnunetutil.la
test_client_nc_SOURCES = \
test_client.c
};
-#ifndef MINGW
/**
* Translate GNUnet-internal permission bitmap to UNIX file
* access permission bitmap.
return mode;
}
-#endif
/**
int
GNUNET_DISK_handle_invalid(const struct GNUNET_DISK_FileHandle *h)
{
-#ifdef MINGW
- return ((!h) || (h->h == INVALID_HANDLE_VALUE)) ? GNUNET_YES : GNUNET_NO;
-#else
return ((!h) || (h->fd == -1)) ? GNUNET_YES : GNUNET_NO;
-#endif
}
/**
return GNUNET_SYSERR;
}
-#ifdef MINGW
- LARGE_INTEGER li;
- LARGE_INTEGER new_pos;
- BOOL b;
-
- static DWORD t[] = { FILE_BEGIN, FILE_CURRENT, FILE_END };
- li.QuadPart = offset;
-
- b = SetFilePointerEx(h->h, li, &new_pos, t[whence]);
- if (b == 0)
- {
- SetErrnoFromWinError(GetLastError());
- return GNUNET_SYSERR;
- }
- return (off_t)new_pos.QuadPart;
-#else
static int t[] = { SEEK_SET, SEEK_CUR, SEEK_END };
return lseek(h->fd, offset, t[whence]);
-#endif
}
expfn = GNUNET_STRINGS_filename_expand(fn);
if (NULL == expfn)
return NULL;
-#ifndef MINGW
+
mode = 0;
if (GNUNET_DISK_OPEN_READWRITE == (flags & GNUNET_DISK_OPEN_READWRITE))
oflags = O_RDWR; /* note: O_RDWR is NOT always O_RDONLY | O_WRONLY */
GNUNET_free(expfn);
return NULL;
}
-#else
- access = 0;
- disp = OPEN_ALWAYS;
-
- if (GNUNET_DISK_OPEN_READWRITE == (flags & GNUNET_DISK_OPEN_READWRITE))
- access = FILE_READ_DATA | FILE_WRITE_DATA;
- else if (flags & GNUNET_DISK_OPEN_READ)
- access = FILE_READ_DATA;
- else if (flags & GNUNET_DISK_OPEN_WRITE)
- access = FILE_WRITE_DATA;
-
- if (flags & GNUNET_DISK_OPEN_FAILIFEXISTS)
- {
- disp = CREATE_NEW;
- }
- else if (flags & GNUNET_DISK_OPEN_CREATE)
- {
- (void)GNUNET_DISK_directory_create_for_file(expfn);
- if (flags & GNUNET_DISK_OPEN_TRUNCATE)
- disp = CREATE_ALWAYS;
- else
- disp = OPEN_ALWAYS;
- }
- else if (flags & GNUNET_DISK_OPEN_TRUNCATE)
- {
- disp = TRUNCATE_EXISTING;
- }
- else
- {
- disp = OPEN_EXISTING;
- }
-
- if (ERROR_SUCCESS == plibc_conv_to_win_pathwconv(expfn, wexpfn))
- h = CreateFileW(wexpfn,
- access,
- FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE,
- NULL,
- disp,
- FILE_ATTRIBUTE_NORMAL,
- NULL);
- else
- h = INVALID_HANDLE_VALUE;
- if (h == INVALID_HANDLE_VALUE)
- {
- int err;
- SetErrnoFromWinError(GetLastError());
- err = errno;
- LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_INFO, "open", expfn);
- GNUNET_free(expfn);
- errno = err;
- return NULL;
- }
-
- if (flags & GNUNET_DISK_OPEN_APPEND)
- if (SetFilePointer(h, 0, 0, FILE_END) == INVALID_SET_FILE_POINTER)
- {
- SetErrnoFromWinError(GetLastError());
- LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_WARNING, "SetFilePointer", expfn);
- CloseHandle(h);
- GNUNET_free(expfn);
- return NULL;
- }
-#endif
ret = GNUNET_new(struct GNUNET_DISK_FileHandle);
ssize_t r;
int len;
-#ifndef MINGW
if (0 != ioctl(GNUNET_NETWORK_get_fd(dnsout), FIONREAD, &len))
{
/* conservative choice: */
len = UINT16_MAX;
}
-#else
- /* port the code above? */
- len = UINT16_MAX;
-#endif
+
GNUNET_log(GNUNET_ERROR_TYPE_DEBUG, "Receiving %d byte DNS reply\n", len);
{
unsigned char buf[len] GNUNET_ALIGN;
+++ /dev/null
-/*
- This file is part of GNUnet
- Copyright (C) 2010 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @file src/util/gnunet-timeout-w32.c
- * @brief small tool starting a child process, waiting that it terminates or killing it after a given timeout period
- * @author LRN
- */
-
-#include <windows.h>
-#include <sys/types.h>
-#include <stdio.h>
-
-int
-main(int argc, char *argv[])
-{
- int i;
- DWORD wait_result;
- wchar_t *commandline;
- wchar_t **wargv;
- wchar_t *arg;
- unsigned int cmdlen;
- STARTUPINFOW start;
- PROCESS_INFORMATION proc;
-
- wchar_t wpath[MAX_PATH + 1];
-
- wchar_t *pathbuf;
- DWORD pathbuf_len, alloc_len;
- wchar_t *ptr;
- wchar_t *non_const_filename;
- wchar_t *wcmd;
- int wargc;
- int timeout = 0;
- ssize_t wrote;
-
- HANDLE job;
-
- if (argc < 3)
- {
- printf
- ("arg 1: timeout in sec., arg 2: executable, arg<n> arguments\n");
- exit(1);
- }
-
- timeout = atoi(argv[1]);
-
- if (timeout == 0)
- timeout = 600;
-
- commandline = GetCommandLineW();
- if (commandline == NULL)
- {
- printf("Failed to get commandline: %lu\n", GetLastError());
- exit(2);
- }
-
- wargv = CommandLineToArgvW(commandline, &wargc);
- if (wargv == NULL || wargc <= 1)
- {
- printf("Failed to get parse commandline: %lu\n", GetLastError());
- exit(3);
- }
-
- job = CreateJobObject(NULL, NULL);
- if (job == NULL)
- {
- printf("Failed to create a job: %lu\n", GetLastError());
- exit(4);
- }
-
- pathbuf_len = GetEnvironmentVariableW(L"PATH", (wchar_t *)&pathbuf, 0);
-
- alloc_len = pathbuf_len + 1;
-
- pathbuf = malloc(alloc_len * sizeof(wchar_t));
-
- ptr = pathbuf;
-
- alloc_len = GetEnvironmentVariableW(L"PATH", ptr, pathbuf_len);
-
- cmdlen = wcslen(wargv[2]);
- if (cmdlen < 5 || wcscmp(&wargv[2][cmdlen - 4], L".exe") != 0)
- {
- non_const_filename = malloc(sizeof(wchar_t) * (cmdlen + 5));
- swprintf(non_const_filename, cmdlen + 5, L"%S.exe", wargv[2]);
- }
- else
- {
- non_const_filename = wcsdup(wargv[2]);
- }
-
- /* Check that this is the full path. If it isn't, search. */
- if (non_const_filename[1] == L':')
- swprintf(wpath, sizeof(wpath) / sizeof(wchar_t), L"%S", non_const_filename);
- else if (!SearchPathW
- (pathbuf, non_const_filename, NULL, sizeof(wpath) / sizeof(wchar_t),
- wpath, NULL))
- {
- printf("Failed to get find executable: %lu\n", GetLastError());
- exit(5);
- }
- free(pathbuf);
- free(non_const_filename);
-
- cmdlen = wcslen(wpath) + 4;
- i = 3;
- while (NULL != (arg = wargv[i++]))
- cmdlen += wcslen(arg) + 4;
-
- wcmd = malloc(sizeof(wchar_t) * (cmdlen + 1));
- wrote = 0;
- i = 2;
- while (NULL != (arg = wargv[i++]))
- {
- /* This is to escape trailing slash */
- wchar_t arg_lastchar = arg[wcslen(arg) - 1];
- if (wrote == 0)
- {
- wrote += swprintf(&wcmd[wrote], cmdlen + 1 - wrote, L"\"%S%S\" ", wpath,
- arg_lastchar == L'\\' ? L"\\" : L"");
- }
- else
- {
- if (wcschr(arg, L' ') != NULL)
- wrote += swprintf(&wcmd[wrote], cmdlen + 1 - wrote, L"\"%S%S\"%S", arg,
- arg_lastchar == L'\\' ? L"\\" : L"", i == wargc ? L"" : L" ");
- else
- wrote += swprintf(&wcmd[wrote], cmdlen + 1 - wrote, L"%S%S%S", arg,
- arg_lastchar == L'\\' ? L"\\" : L"", i == wargc ? L"" : L" ");
- }
- }
-
- LocalFree(wargv);
-
- memset(&start, 0, sizeof(start));
- start.cb = sizeof(start);
-
- if (!CreateProcessW(wpath, wcmd, NULL, NULL, TRUE, CREATE_SUSPENDED,
- NULL, NULL, &start, &proc))
- {
- wprintf(L"Failed to get spawn process `%S' with arguments `%S': %lu\n", wpath, wcmd, GetLastError());
- exit(6);
- }
-
- AssignProcessToJobObject(job, proc.hProcess);
-
- ResumeThread(proc.hThread);
- CloseHandle(proc.hThread);
-
- free(wcmd);
-
- wait_result = WaitForSingleObject(proc.hProcess, timeout * 1000);
- if (wait_result == WAIT_OBJECT_0)
- {
- DWORD status;
- wait_result = GetExitCodeProcess(proc.hProcess, &status);
- CloseHandle(proc.hProcess);
- if (wait_result != 0)
- {
- printf("Test process exited with result %lu\n", status);
- TerminateJobObject(job, status);
- exit(status);
- }
- printf("Test process exited (failed to obtain exit status)\n");
- TerminateJobObject(job, 0);
- exit(0);
- }
- printf("Child processes were killed after timeout of %u seconds\n",
- timeout);
- TerminateJobObject(job, 1);
- CloseHandle(proc.hProcess);
- exit(1);
-}
-
-/* end of timeout_watchdog_w32.c */
flags,
src_addr,
addrlen);
-#ifdef MINGW
- if (SOCKET_ERROR == ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
return ret;
}
buffer,
length,
flags);
-#ifdef MINGW
- if (SOCKET_ERROR == ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
return ret;
}
buffer,
length,
flags);
-#ifdef MINGW
- if (SOCKET_ERROR == ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
return ret;
}
flags |= MSG_NOSIGNAL;
#endif
ret = sendto(desc->fd, message, length, flags, dest_addr, dest_len);
-#ifdef MINGW
- if (SOCKET_ERROR == ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
return ret;
}
option_name,
option_value,
option_len);
-#ifdef MINGW
- if (SOCKET_ERROR == ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
+
return ret == 0 ? GNUNET_OK : GNUNET_SYSERR;
}
int ret;
ret = shutdown(desc->fd, how);
-#ifdef MINGW
- if (0 != ret)
- SetErrnoFromWinsockError(WSAGetLastError());
-#endif
+
return (0 == ret) ? GNUNET_OK : GNUNET_SYSERR;
}
GNUNET_NETWORK_fdset_add(struct GNUNET_NETWORK_FDSet *dst,
const struct GNUNET_NETWORK_FDSet *src)
{
-#ifndef MINGW
int nfds;
for (nfds = src->nsds; nfds >= 0; nfds--)
FD_SET(nfds, &dst->sds);
dst->nsds = GNUNET_MAX(dst->nsds,
src->nsds);
-#else
- /* This is MinGW32-specific implementation that relies on the code that
- * winsock2.h defines for FD_SET. Namely, it relies on FD_SET checking
- * that fd being added is not already in the set.
- * Also relies on us knowing what's inside fd_set (fd_count and fd_array).
- *
- * NOTE: I don't understand why the UNIX-logic wouldn't work
- * for the first part here as well. -CG
- */
- unsigned int i;
-
- for (i = 0; i < src->sds.fd_count; i++)
- FD_SET(src->sds.fd_array[i],
- &dst->sds);
- dst->nsds = GNUNET_MAX(src->nsds,
- dst->nsds);
-
- /* also copy over `struct GNUNET_DISK_FileHandle` array */
- if (dst->handles_pos + src->handles_pos > dst->handles_size)
- GNUNET_array_grow(dst->handles,
- dst->handles_size,
- ((dst->handles_pos + src->handles_pos) << 1));
- for (i = 0; i < src->handles_pos; i++)
- dst->handles[dst->handles_pos++] = src->handles[i];
-#endif
}
FD_COPY(&from->sds,
&to->sds);
to->nsds = from->nsds;
-#ifdef MINGW
- if (from->handles_pos > to->handles_size)
- GNUNET_array_grow(to->handles,
- to->handles_size,
- from->handles_pos * 2);
- GNUNET_memcpy(to->handles,
- from->handles,
- from->handles_pos * sizeof(struct GNUNET_NETWORK_Handle *));
- to->handles_pos = from->handles_pos;
-#endif
}
GNUNET_NETWORK_fdset_handle_set(struct GNUNET_NETWORK_FDSet *fds,
const struct GNUNET_DISK_FileHandle *h)
{
-#ifdef MINGW
- if (fds->handles_pos == fds->handles_size)
- GNUNET_array_grow(fds->handles,
- fds->handles_size,
- fds->handles_size * 2 + 2);
- fds->handles[fds->handles_pos++] = h;
-#else
int fd;
GNUNET_assert(GNUNET_OK ==
&fds->sds);
fds->nsds = GNUNET_MAX(fd + 1,
fds->nsds);
-#endif
}
GNUNET_NETWORK_fdset_handle_set_first(struct GNUNET_NETWORK_FDSet *fds,
const struct GNUNET_DISK_FileHandle *h)
{
-#ifdef MINGW
- if (fds->handles_pos == fds->handles_size)
- GNUNET_array_grow(fds->handles,
- fds->handles_size,
- fds->handles_size * 2 + 2);
- fds->handles[fds->handles_pos] = h;
- if (fds->handles[0] != h)
- {
- const struct GNUNET_DISK_FileHandle *bak = fds->handles[0];
- fds->handles[0] = h;
- fds->handles[fds->handles_pos] = bak;
- }
- fds->handles_pos++;
-#else
GNUNET_NETWORK_fdset_handle_set(fds, h);
-#endif
}
GNUNET_NETWORK_fdset_handle_isset(const struct GNUNET_NETWORK_FDSet *fds,
const struct GNUNET_DISK_FileHandle *h)
{
-#ifdef MINGW
- unsigned int i;
-
- for (i = 0; i < fds->handles_pos; i++)
- if (fds->handles[i] == h)
- return GNUNET_YES;
- return GNUNET_NO;
-#else
return FD_ISSET(h->fd,
&fds->sds);
-#endif
}
-#ifdef MINGW
-/**
- * Numerically compare pointers to sort them.
- * Used to test for overlap in the arrays.
- *
- * @param p1 a pointer
- * @param p2 a pointer
- * @return -1, 0 or 1, if the p1 < p2, p1==p2 or p1 > p2.
- */
-static int
-ptr_cmp(const void *p1,
- const void *p2)
-{
- if (p1 == p2)
- return 0;
- if ((intptr_t)p1 < (intptr_t)p2)
- return -1;
- return 1;
-}
-#endif
-
-
/**
* Checks if two fd sets overlap
*
GNUNET_NETWORK_fdset_overlap(const struct GNUNET_NETWORK_FDSet *fds1,
const struct GNUNET_NETWORK_FDSet *fds2)
{
-#ifndef MINGW
int nfds;
nfds = GNUNET_MIN(fds1->nsds,
return GNUNET_YES;
}
return GNUNET_NO;
-#else
- unsigned int i;
- unsigned int j;
-
- /* This code is somewhat hacky, we are not supposed to know what's
- * inside of fd_set; also the O(n^2) is really bad... */
- for (i = 0; i < fds1->sds.fd_count; i++)
- for (j = 0; j < fds2->sds.fd_count; j++)
- if (fds1->sds.fd_array[i] == fds2->sds.fd_array[j])
- return GNUNET_YES;
-
- /* take a short cut if possible */
- if ((0 == fds1->handles_pos) ||
- (0 == fds2->handles_pos))
- return GNUNET_NO;
-
- /* Sort file handles array to avoid quadratic complexity when
- checking for overlap */
- qsort(fds1->handles,
- fds1->handles_pos,
- sizeof(void *),
- &ptr_cmp);
- qsort(fds2->handles,
- fds2->handles_pos,
- sizeof(void *),
- &ptr_cmp);
- i = 0;
- j = 0;
- while ((i < fds1->handles_pos) &&
- (j < fds2->handles_pos))
- {
- switch (ptr_cmp(fds1->handles[i],
- fds2->handles[j]))
- {
- case -1:
- i++;
- break;
-
- case 0:
- return GNUNET_YES;
-
- case 1:
- j++;
- }
- }
- return GNUNET_NO;
-#endif
}
void
GNUNET_NETWORK_fdset_destroy(struct GNUNET_NETWORK_FDSet *fds)
{
-#ifdef MINGW
- GNUNET_array_grow(fds->handles,
- fds->handles_size,
- 0);
-#endif
GNUNET_free(fds);
}
-#if MINGW
-/**
- * FIXME.
- */
-struct _select_params {
- /**
- * Read set.
- */
- fd_set *r;
-
- /**
- * Write set.
- */
- fd_set *w;
-
- /**
- * Except set.
- */
- fd_set *e;
-
- /**
- * Timeout for select().
- */
- struct timeval *tv;
-
- /**
- * FIXME.
- */
- HANDLE wakeup;
-
- /**
- * FIXME.
- */
- HANDLE standby;
-
- /**
- * FIXME.
- */
- _win_socket wakeup_socket;
-
- /**
- * Set to return value from select.
- */
- int status;
-};
-
-
-/**
- * FIXME.
- */
-static DWORD WINAPI
-_selector(LPVOID p)
-{
- struct _select_params *sp = p;
-
- while (1)
- {
- WaitForSingleObject(sp->standby,
- INFINITE);
- ResetEvent(sp->standby);
- sp->status = select(1,
- sp->r,
- sp->w,
- sp->e,
- sp->tv);
- if (FD_ISSET(sp->wakeup_socket,
- sp->r))
- {
- FD_CLR(sp->wakeup_socket,
- sp->r);
- sp->status -= 1;
- }
- SetEvent(sp->wakeup);
- }
- return 0;
-}
-
-
-static HANDLE hEventPipeWrite;
-
-static HANDLE hEventReadReady;
-
-static struct _select_params sp;
-
-static HANDLE select_thread;
-
-static HANDLE select_finished_event;
-
-static HANDLE select_standby_event;
-
-static _win_socket select_wakeup_socket = -1;
-
-static _win_socket select_send_socket = -1;
-
-static struct timeval select_timeout;
-
-
-/**
- * On W32, we actually use a thread to help with the
- * event loop due to W32-API limitations. This function
- * initializes that thread.
- */
-static void
-initialize_select_thread()
-{
- _win_socket select_listening_socket = -1;
- struct sockaddr_in s_in;
- int alen;
- int res;
- unsigned long p;
-
- select_standby_event = CreateEvent(NULL, TRUE, FALSE, NULL);
- select_finished_event = CreateEvent(NULL, TRUE, FALSE, NULL);
-
- select_wakeup_socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
-
- select_listening_socket = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
-
- p = 1;
- res = ioctlsocket(select_wakeup_socket, FIONBIO, &p);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Select thread initialization: ioctlsocket() returns %d\n",
- res);
-
- alen = sizeof(s_in);
- s_in.sin_family = AF_INET;
- s_in.sin_port = 0;
- s_in.sin_addr.S_un.S_un_b.s_b1 = 127;
- s_in.sin_addr.S_un.S_un_b.s_b2 = 0;
- s_in.sin_addr.S_un.S_un_b.s_b3 = 0;
- s_in.sin_addr.S_un.S_un_b.s_b4 = 1;
- res = bind(select_listening_socket,
- (const struct sockaddr *)&s_in,
- sizeof(s_in));
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Select thread initialization: bind() returns %d\n",
- res);
-
- res = getsockname(select_listening_socket,
- (struct sockaddr *)&s_in,
- &alen);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Select thread initialization: getsockname() returns %d\n",
- res);
-
- res = listen(select_listening_socket,
- SOMAXCONN);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Select thread initialization: listen() returns %d\n",
- res);
- res = connect(select_wakeup_socket,
- (const struct sockaddr *)&s_in,
- sizeof(s_in));
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Select thread initialization: connect() returns %d\n",
- res);
-
- select_send_socket = accept(select_listening_socket,
- (struct sockaddr *)&s_in,
- &alen);
-
- closesocket(select_listening_socket);
-
- sp.wakeup = select_finished_event;
- sp.standby = select_standby_event;
- sp.wakeup_socket = select_wakeup_socket;
-
- select_thread = CreateThread(NULL,
- 0,
- _selector,
- &sp,
- 0, NULL);
-}
-
-
-#endif
-
/**
* Test if the given @a port is available.
*
}
-#ifndef MINGW
/**
* Check if sockets or pipes meet certain conditions
*
GNUNET_TIME_UNIT_FOREVER_REL.rel_value_us) ? NULL : &tv);
}
-
-#else
-/* MINGW */
-
-
-/**
- * Non-blocking test if a pipe is ready for reading.
- *
- * @param fh pipe handle
- * @return #GNUNET_YES if the pipe is ready for reading
- */
-static int
-pipe_read_ready(const struct GNUNET_DISK_FileHandle *fh)
-{
- DWORD error;
- BOOL bret;
- DWORD waitstatus = 0;
-
- SetLastError(0);
- bret = PeekNamedPipe(fh->h, NULL, 0, NULL, &waitstatus, NULL);
- error = GetLastError();
- if (0 == bret)
- {
- /* TODO: either add more errors to this condition, or eliminate it
- * entirely (failed to peek -> pipe is in serious trouble, should
- * be selected as readable).
- */
- if ((error != ERROR_BROKEN_PIPE) &&
- (error != ERROR_INVALID_HANDLE))
- return GNUNET_NO;
- }
- else if (waitstatus <= 0)
- return GNUNET_NO;
- return GNUNET_YES;
-}
-
-
-/**
- * Non-blocking test if a pipe is having an IO exception.
- *
- * @param fh pipe handle
- * @return #GNUNET_YES if the pipe is having an IO exception.
- */
-static int
-pipe_except_ready(const struct GNUNET_DISK_FileHandle *fh)
-{
- DWORD dwBytes;
-
- if (PeekNamedPipe(fh->h, NULL, 0, NULL, &dwBytes, NULL))
- return GNUNET_NO;
- return GNUNET_YES;
-}
-
-
-/**
- * Iterate over handles in fds, destructively rewrite the
- * handles array contents of fds so that it starts with the
- * handles that are ready, and update handles_pos accordingly.
- *
- * @param fds set of handles (usually pipes) to be checked for readiness
- * @param except GNUNET_NO if fds should be checked for readiness to read,
- * GNUNET_YES if fds should be checked for exceptions
- * (there is no way to check for write-readiness - pipes are always write-ready)
- * @param set_for_sure a HANDLE that is known to be set already,
- * because WaitForMultipleObjects() returned its index.
- * @return number of ready handles
- */
-static int
-check_handles_status(struct GNUNET_NETWORK_FDSet *fds,
- int except,
- HANDLE set_for_sure)
-{
- const struct GNUNET_DISK_FileHandle *fh;
- unsigned int roff;
- unsigned int woff;
-
- for (woff = 0, roff = 0; roff < fds->handles_pos; roff++)
- {
- fh = fds->handles[roff];
- if (fh == set_for_sure)
- {
- fds->handles[woff++] = fh;
- }
- else if (fh->type == GNUNET_DISK_HANLDE_TYPE_PIPE)
- {
- if ((except && pipe_except_ready(fh)) ||
- (!except && pipe_read_ready(fh)))
- fds->handles[woff++] = fh;
- }
- else if (fh->type == GNUNET_DISK_HANLDE_TYPE_FILE)
- {
- if (!except)
- fds->handles[woff++] = fh;
- }
- else
- {
- if (WAIT_OBJECT_0 == WaitForSingleObject(fh->h, 0))
- fds->handles[woff++] = fh;
- }
- }
- fds->handles_pos = woff;
- return woff;
-}
-
-
-/**
- * Check if sockets or pipes meet certain conditions, version for W32.
- *
- * @param rfds set of sockets or pipes to be checked for readability
- * @param wfds set of sockets or pipes to be checked for writability
- * @param efds set of sockets or pipes to be checked for exceptions
- * @param timeout relative value when to return
- * @return number of selected sockets or pipes, #GNUNET_SYSERR on error
- */
-int
-GNUNET_NETWORK_socket_select(struct GNUNET_NETWORK_FDSet *rfds,
- struct GNUNET_NETWORK_FDSet *wfds,
- struct GNUNET_NETWORK_FDSet *efds,
- const struct GNUNET_TIME_Relative timeout)
-{
- const struct GNUNET_DISK_FileHandle *fh;
- int nfds;
- int handles;
- unsigned int i;
- int retcode;
- uint64_t mcs_total;
- DWORD ms_rounded;
- int nhandles = 0;
- int read_pipes_off;
- HANDLE handle_array[FD_SETSIZE + 2];
- int returncode;
- int returnedpos = 0;
- int selectret;
- fd_set aread;
- fd_set awrite;
- fd_set aexcept;
-
- nfds = 0;
- handles = 0;
- if (NULL != rfds)
- {
- nfds = GNUNET_MAX(nfds, rfds->nsds);
- handles += rfds->handles_pos;
- }
- if (NULL != wfds)
- {
- nfds = GNUNET_MAX(nfds, wfds->nsds);
- handles += wfds->handles_pos;
- }
- if (NULL != efds)
- {
- nfds = GNUNET_MAX(nfds, efds->nsds);
- handles += efds->handles_pos;
- }
-
- if ((0 == nfds) &&
- (GNUNET_TIME_UNIT_FOREVER_REL.rel_value_us == timeout.rel_value_us) &&
- (0 == handles))
- {
- GNUNET_break(0);
- LOG(GNUNET_ERROR_TYPE_ERROR,
- _("Fatal internal logic error, process hangs in `%s' (abort with CTRL-C)!\n"),
- "select");
- }
-#define SAFE_FD_ISSET(fd, set) (set != NULL && FD_ISSET(fd, set))
- /* calculate how long we need to wait in microseconds */
- if (timeout.rel_value_us == GNUNET_TIME_UNIT_FOREVER_REL.rel_value_us)
- {
- mcs_total = INFINITE;
- ms_rounded = INFINITE;
- }
- else
- {
- mcs_total = timeout.rel_value_us / GNUNET_TIME_UNIT_MICROSECONDS.rel_value_us;
- ms_rounded = (DWORD)(mcs_total / GNUNET_TIME_UNIT_MILLISECONDS.rel_value_us);
- if (mcs_total > 0 && ms_rounded == 0)
- ms_rounded = 1;
- }
- /* select() may be used as a portable way to sleep */
- if (!(rfds || wfds || efds))
- {
- Sleep(ms_rounded);
- return 0;
- }
-
- if (NULL == select_thread)
- initialize_select_thread();
-
- FD_ZERO(&aread);
- FD_ZERO(&awrite);
- FD_ZERO(&aexcept);
- if (rfds)
- FD_COPY(&rfds->sds, &aread);
- if (wfds)
- FD_COPY(&wfds->sds, &awrite);
- if (efds)
- FD_COPY(&efds->sds, &aexcept);
-
- /* Start by doing a fast check on sockets and pipes (without
- waiting). It is cheap, and is sufficient most of the time. By
- profiling we detected that to be true in 90% of the cases.
- */
-
- /* Do the select now */
- select_timeout.tv_sec = 0;
- select_timeout.tv_usec = 0;
-
- /* Copy all the writes to the except, so we can detect connect() errors */
- for (i = 0; i < awrite.fd_count; i++)
- FD_SET(awrite.fd_array[i],
- &aexcept);
- if ((aread.fd_count > 0) ||
- (awrite.fd_count > 0) ||
- (aexcept.fd_count > 0))
- selectret = select(1,
- (NULL != rfds) ? &aread : NULL,
- (NULL != wfds) ? &awrite : NULL,
- &aexcept,
- &select_timeout);
- else
- selectret = 0;
- if (-1 == selectret)
- {
- /* Throw an error early on, while we still have the context. */
- LOG(GNUNET_ERROR_TYPE_ERROR,
- "W32 select(%d, %d, %d) failed: %lu\n",
- rfds ? aread.fd_count : 0,
- wfds ? awrite.fd_count : 0,
- aexcept.fd_count,
- GetLastError());
- GNUNET_assert(0);
- }
-
- /* Check aexcept, if something is in there and we copied that
- FD before to detect connect() errors, add it back to the
- write set to report errors. */
- if (NULL != wfds)
- for (i = 0; i < aexcept.fd_count; i++)
- if (FD_ISSET(aexcept.fd_array[i],
- &wfds->sds))
- FD_SET(aexcept.fd_array[i],
- &awrite);
-
-
- /* If our select returned something or is a 0-timed request, then
- also check the pipes and get out of here! */
- /* Sadly, it means code duplication :( */
- if ((selectret > 0) || (0 == mcs_total))
- {
- retcode = 0;
-
- /* Read Pipes */
- if (rfds && (rfds->handles_pos > 0))
- retcode += check_handles_status(rfds, GNUNET_NO, NULL);
-
- /* wfds handles remain untouched, on W32
- we pretend our pipes are "always" write-ready */
-
- /* except pipes */
- if (efds && (efds->handles_pos > 0))
- retcode += check_handles_status(efds, GNUNET_YES, NULL);
-
- if (rfds)
- {
- GNUNET_NETWORK_fdset_zero(rfds);
- if (selectret != -1)
- GNUNET_NETWORK_fdset_copy_native(rfds, &aread, selectret);
- }
- if (wfds)
- {
- GNUNET_NETWORK_fdset_zero(wfds);
- if (selectret != -1)
- GNUNET_NETWORK_fdset_copy_native(wfds, &awrite, selectret);
- }
- if (efds)
- {
- GNUNET_NETWORK_fdset_zero(efds);
- if (selectret != -1)
- GNUNET_NETWORK_fdset_copy_native(efds, &aexcept, selectret);
- }
- if (-1 == selectret)
- return -1;
- /* Add our select() FDs to the total return value */
- retcode += selectret;
- return retcode;
- }
-
- /* If we got this far, use slower implementation that is able to do a waiting select
- on both sockets and pipes simultaneously */
-
- /* Events for pipes */
- if (!hEventReadReady)
- hEventReadReady = CreateEvent(NULL, TRUE, TRUE, NULL);
- if (!hEventPipeWrite)
- hEventPipeWrite = CreateEvent(NULL, TRUE, TRUE, NULL);
- retcode = 0;
-
- FD_ZERO(&aread);
- FD_ZERO(&awrite);
- FD_ZERO(&aexcept);
- if (rfds)
- FD_COPY(&rfds->sds, &aread);
- if (wfds)
- FD_COPY(&wfds->sds, &awrite);
- if (efds)
- FD_COPY(&efds->sds, &aexcept);
- /* We will first Add the PIPES to the events */
- /* Track how far in `handle_array` the read pipes go,
- so we may by-pass them quickly if none of them
- are selected. */
- read_pipes_off = 0;
- if (rfds && (rfds->handles_pos > 0))
- {
- for (i = 0; i < rfds->handles_pos; i++)
- {
- fh = rfds->handles[i];
- if (fh->type == GNUNET_DISK_HANLDE_TYPE_EVENT)
- {
- handle_array[nhandles++] = fh->h;
- continue;
- }
- if (fh->type != GNUNET_DISK_HANLDE_TYPE_PIPE)
- continue;
- /* Read zero bytes to check the status of the pipe */
- if (!ReadFile(fh->h, NULL, 0, NULL, fh->oOverlapRead))
- {
- DWORD error_code = GetLastError();
-
- if (error_code == ERROR_IO_PENDING)
- {
- /* add as unready */
- handle_array[nhandles++] = fh->oOverlapRead->hEvent;
- read_pipes_off++;
- }
- else
- {
- /* add as ready */
- handle_array[nhandles++] = hEventReadReady;
- read_pipes_off++;
- }
- }
- else
- {
- /* error also counts as ready */
- handle_array[nhandles++] = hEventReadReady;
- read_pipes_off++;
- }
- }
- }
-
- if (wfds && (wfds->handles_pos > 0))
- {
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Adding the write ready event to the array as %d\n",
- nhandles);
- handle_array[nhandles++] = hEventPipeWrite;
- }
-
- sp.status = 0;
- if (nfds > 0)
- {
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Adding the socket event to the array as %d\n",
- nhandles);
- handle_array[nhandles++] = select_finished_event;
- if (timeout.rel_value_us == GNUNET_TIME_UNIT_FOREVER_REL.rel_value_us)
- {
- sp.tv = NULL;
- }
- else
- {
- select_timeout.tv_sec = timeout.rel_value_us / GNUNET_TIME_UNIT_SECONDS.rel_value_us;
- select_timeout.tv_usec = (timeout.rel_value_us -
- (select_timeout.tv_sec *
- GNUNET_TIME_UNIT_SECONDS.rel_value_us));
- sp.tv = &select_timeout;
- }
- FD_SET(select_wakeup_socket, &aread);
- do
- {
- i = recv(select_wakeup_socket,
- (char *)&returnedpos,
- 1,
- 0);
- }
- while (i == 1);
- sp.r = &aread;
- sp.w = &awrite;
- sp.e = &aexcept;
- /* Failed connections cause sockets to be set in errorfds on W32,
- * but on POSIX it should set them in writefds.
- * First copy all awrite sockets to aexcept, later we'll
- * check aexcept and set its contents in awrite as well
- * Sockets are also set in errorfds when OOB data is available,
- * but we don't use OOB data.
- */
- for (i = 0; i < awrite.fd_count; i++)
- FD_SET(awrite.fd_array[i],
- &aexcept);
- ResetEvent(select_finished_event);
- SetEvent(select_standby_event);
- }
-
- /* NULL-terminate array */
- handle_array[nhandles] = NULL;
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "nfds: %d, handles: %d, will wait: %llu mcs\n",
- nfds,
- nhandles,
- mcs_total);
- if (nhandles)
- {
- returncode
- = WaitForMultipleObjects(nhandles,
- handle_array,
- FALSE,
- ms_rounded);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "WaitForMultipleObjects Returned: %d\n",
- returncode);
- }
- else if (nfds > 0)
- {
- GNUNET_break(0); /* This branch shouldn't actually be executed...*/
- i = (int)WaitForSingleObject(select_finished_event,
- INFINITE);
- returncode = WAIT_TIMEOUT;
- }
- else
- {
- /* Shouldn't come this far. If it does - investigate. */
- GNUNET_assert(0);
- }
-
- if (nfds > 0)
- {
- /* Don't wake up select-thread when delay is 0, it should return immediately
- * and wake up by itself.
- */
- if (0 != mcs_total)
- i = send(select_send_socket,
- (const char *)&returnedpos,
- 1,
- 0);
- i = (int)WaitForSingleObject(select_finished_event,
- INFINITE);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Finished waiting for the select thread: %d %d\n",
- i,
- sp.status);
- if (0 != mcs_total)
- {
- do
- {
- i = recv(select_wakeup_socket,
- (char *)&returnedpos,
- 1, 0);
- }
- while (1 == i);
- }
- /* Check aexcept, add its contents to awrite */
- for (i = 0; i < aexcept.fd_count; i++)
- FD_SET(aexcept.fd_array[i], &awrite);
- }
-
- returnedpos = returncode - WAIT_OBJECT_0;
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "return pos is: %d\n",
- returnedpos);
-
- if (rfds)
- {
- /* We queued a zero-long read on each pipe to check
- * its state, now we must cancel these read operations.
- * This must be done while rfds->handles_pos is still
- * intact and matches the number of read handles that we
- * got from the caller.
- */
- for (i = 0; i < rfds->handles_pos; i++)
- {
- fh = rfds->handles[i];
- if (GNUNET_DISK_HANLDE_TYPE_PIPE == fh->type)
- CancelIo(fh->h);
- }
-
- /* We may have some pipes ready for reading. */
- if (returnedpos < read_pipes_off)
- retcode += check_handles_status(rfds, GNUNET_NO, handle_array[returnedpos]);
- else
- rfds->handles_pos = 0;
-
- if (-1 != sp.status)
- GNUNET_NETWORK_fdset_copy_native(rfds, &aread, retcode);
- }
- if (wfds)
- {
- retcode += wfds->handles_pos;
- /* wfds handles remain untouched */
- if (-1 != sp.status)
- GNUNET_NETWORK_fdset_copy_native(wfds, &awrite, retcode);
- }
- if (efds)
- {
- retcode += check_handles_status(rfds,
- GNUNET_YES,
- returnedpos < nhandles ? handle_array[returnedpos] : NULL);
- if (-1 != sp.status)
- GNUNET_NETWORK_fdset_copy_native(efds, &aexcept, retcode);
- }
-
- if (sp.status > 0)
- retcode += sp.status;
-
- return retcode;
-}
-
-/* MINGW */
-#endif
-
/* end of network.c */
char *p;
char *pf;
-#ifdef MINGW
- char *binaryexe;
-
- GNUNET_asprintf(&binaryexe, "%s.exe", binary);
- if ((GNUNET_YES ==
- GNUNET_STRINGS_path_is_absolute(binaryexe, GNUNET_NO, NULL, NULL)) ||
- (0 == strncmp(binary, "./", 2)))
- p = GNUNET_strdup(binaryexe);
- else
- {
- p = get_path_from_PATH(binaryexe);
- if (NULL != p)
- {
- GNUNET_asprintf(&pf, "%s/%s", p, binaryexe);
- GNUNET_free(p);
- p = pf;
- }
- }
- GNUNET_free(binaryexe);
-#else
if ((GNUNET_YES ==
GNUNET_STRINGS_path_is_absolute(binary, GNUNET_NO, NULL, NULL)) ||
(0 == strncmp(binary, "./", 2)))
p = pf;
}
}
-#endif
+
if (NULL == p)
{
LOG(GNUNET_ERROR_TYPE_INFO,
GNUNET_free(p);
return GNUNET_SYSERR;
}
-#ifndef MINGW
+
if (0 == getuid())
{
/* as we run as root, we don't insist on SUID */
GNUNET_free(p);
return GNUNET_YES;
}
-#endif
+
if (0 != stat(p, &statbuf))
{
LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_WARNING, "stat", p);
}
if (check_suid)
{
-#ifndef MINGW
(void)params;
if ((0 != (statbuf.st_mode & S_ISUID)) && (0 == statbuf.st_uid))
{
_("Binary `%s' exists, but is not SUID\n"),
p);
/* binary exists, but not SUID */
-#else
- STARTUPINFO start;
- char parameters[512];
- PROCESS_INFORMATION proc;
- DWORD exit_value;
-
- GNUNET_snprintf(parameters, sizeof(parameters), "-d %s", params);
- memset(&start, 0, sizeof(start));
- start.cb = sizeof(start);
- memset(&proc, 0, sizeof(proc));
-
-
- // Start the child process.
- if (!(CreateProcess(
- p, // current windows (2k3 and up can handle / instead of \ in paths))
- parameters, // execute dryrun/priviliege checking mode
- NULL, // Process handle not inheritable
- NULL, // Thread handle not inheritable
- FALSE, // Set handle inheritance to FALSE
- CREATE_DEFAULT_ERROR_MODE, // No creation flags
- NULL, // Use parent's environment block
- NULL, // Use parent's starting directory
- &start, // Pointer to STARTUPINFO structure
- &proc) // Pointer to PROCESS_INFORMATION structure
- ))
- {
- LOG(GNUNET_ERROR_TYPE_ERROR,
- _("CreateProcess failed for binary %s (%d).\n"),
- p,
- GetLastError());
- return GNUNET_SYSERR;
- }
-
- // Wait until child process exits.
- WaitForSingleObject(proc.hProcess, INFINITE);
-
- if (!GetExitCodeProcess(proc.hProcess, &exit_value))
- {
- LOG(GNUNET_ERROR_TYPE_ERROR,
- _("GetExitCodeProcess failed for binary %s (%d).\n"),
- p,
- GetLastError());
- return GNUNET_SYSERR;
- }
- // Close process and thread handles.
- CloseHandle(proc.hProcess);
- CloseHandle(proc.hThread);
-
- if (!exit_value)
- return GNUNET_YES;
-#endif
}
GNUNET_free(p);
return GNUNET_NO;
#define LOG_STRERROR_FILE(kind, syscall, filename) GNUNET_log_from_strerror_file(kind, "util-os-network", syscall, filename)
-#if !(HAVE_GETIFADDRS && HAVE_FREEIFADDRS) && !MINGW
+#if !(HAVE_GETIFADDRS && HAVE_FREEIFADDRS)
/**
* Try to enumerate all network interfaces using 'ifconfig'.
*
GNUNET_OS_network_interfaces_list(GNUNET_OS_NetworkInterfaceProcessor proc,
void *proc_cls)
{
-#ifdef MINGW
- int r;
- int i;
- struct EnumNICs3_results *results = NULL;
- int results_count;
-
- r = EnumNICs3(&results, &results_count);
- if (r != GNUNET_OK)
- return;
-
- for (i = 0; i < results_count; i++)
- {
- if (GNUNET_OK !=
- proc(proc_cls, results[i].pretty_name, results[i].is_default,
- (const struct sockaddr *)&results[i].address,
- results[i].
- flags & ENUMNICS3_BCAST_OK ?
- (const struct sockaddr *)&results[i].broadcast : NULL,
- results[i].flags & ENUMNICS3_MASK_OK ?
- (const struct sockaddr *)&results[i].mask : NULL,
- results[i].addr_size))
- break;
- }
- EnumNICs3_free(results);
- return;
-#elif HAVE_GETIFADDRS && HAVE_FREEIFADDRS
+#if HAVE_GETIFADDRS && HAVE_FREEIFADDRS
struct ifaddrs *ifa_first;
struct ifaddrs *ifa_ptr;
socklen_t alen;
const char *filename,
char *const argv[])
{
-#ifndef MINGW
pid_t ret;
char fds[16];
struct GNUNET_OS_Process *gnunet_proc;
GNUNET_array_append(lscp, ls, -1);
}
#if DARWIN
- /* see https://gnunet.org/vfork */
+ /* see https://web.archive.org/web/20150924082249/gnunet.org/vfork */
ret = vfork();
#else
ret = fork();
execvp(filename, argv);
LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_ERROR, "execvp", filename);
_exit(1);
-#else
- struct GNUNET_DISK_FileHandle *childpipe_read;
- struct GNUNET_DISK_FileHandle *childpipe_write;
- HANDLE childpipe_read_handle;
- char **arg;
- char **non_const_argv;
- unsigned int cmdlen;
- char *cmd;
- char *idx;
- STARTUPINFOW start;
- PROCESS_INFORMATION proc;
- int argcount = 0;
- struct GNUNET_OS_Process *gnunet_proc;
- char path[MAX_PATH + 1];
- char *our_env[7] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL };
- char *env_block = NULL;
- char *pathbuf;
- DWORD pathbuf_len;
- DWORD alloc_len;
- char *self_prefix;
- char *bindir;
- char *libdir;
- char *ptr;
- char *non_const_filename;
- char win_path[MAX_PATH + 1];
- struct GNUNET_DISK_PipeHandle *lsocks_pipe;
- const struct GNUNET_DISK_FileHandle *lsocks_write_fd;
- HANDLE lsocks_read;
- HANDLE lsocks_write;
- wchar_t *wpath;
- wchar_t *wcmd;
- size_t wpath_len;
- size_t wcmd_len;
- int env_off;
- int fail;
- long lRet;
- HANDLE stdin_handle;
- HANDLE stdout_handle;
- HANDLE stdih, stdoh, stdeh;
- DWORD stdif, stdof, stdef;
- BOOL bresult;
- DWORD error_code;
- DWORD create_no_window;
-
- if (GNUNET_SYSERR ==
- GNUNET_OS_check_helper_binary(filename, GNUNET_NO, NULL))
- return NULL; /* not executable */
-
- /* Search in prefix dir (hopefully - the directory from which
- * the current module was loaded), bindir and libdir, then in PATH
- */
- self_prefix = GNUNET_OS_installation_get_path(GNUNET_OS_IPK_SELF_PREFIX);
- bindir = GNUNET_OS_installation_get_path(GNUNET_OS_IPK_BINDIR);
- libdir = GNUNET_OS_installation_get_path(GNUNET_OS_IPK_LIBDIR);
-
- pathbuf_len = GetEnvironmentVariableA("PATH", (char *)&pathbuf, 0);
-
- alloc_len = pathbuf_len + 1 + strlen(self_prefix) + 1 + strlen(bindir) + 1 +
- strlen(libdir);
-
- pathbuf = GNUNET_malloc(alloc_len * sizeof(char));
-
- ptr = pathbuf;
- ptr += sprintf(pathbuf, "%s;%s;%s;", self_prefix, bindir, libdir);
- GNUNET_free(self_prefix);
- GNUNET_free(bindir);
- GNUNET_free(libdir);
-
- alloc_len = GetEnvironmentVariableA("PATH", ptr, pathbuf_len);
- if (alloc_len != pathbuf_len - 1)
- {
- GNUNET_free(pathbuf);
- errno = ENOSYS; /* PATH changed on the fly. What kind of error is that? */
- return NULL;
- }
-
- cmdlen = strlen(filename);
- if ((cmdlen < 5) || (0 != strcmp(&filename[cmdlen - 4], ".exe")))
- GNUNET_asprintf(&non_const_filename, "%s.exe", filename);
- else
- GNUNET_asprintf(&non_const_filename, "%s", filename);
-
- /* It could be in POSIX form, convert it to a DOS path early on */
- if (ERROR_SUCCESS !=
- (lRet = plibc_conv_to_win_path(non_const_filename, win_path)))
- {
- SetErrnoFromWinError(lRet);
- LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_ERROR,
- "plibc_conv_to_win_path",
- non_const_filename);
- GNUNET_free(non_const_filename);
- GNUNET_free(pathbuf);
- return NULL;
- }
- GNUNET_free(non_const_filename);
- non_const_filename = GNUNET_strdup(win_path);
- /* Check that this is the full path. If it isn't, search. */
- /* FIXME: convert it to wchar_t and use SearchPathW?
- * Remember: arguments to _start_process() are technically in UTF-8...
- */
- if (non_const_filename[1] == ':')
- {
- snprintf(path, sizeof(path) / sizeof(char), "%s", non_const_filename);
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Using path `%s' as-is. PATH is %s\n",
- path,
- ptr);
- }
- else if (!SearchPathA(pathbuf,
- non_const_filename,
- NULL,
- sizeof(path) / sizeof(char),
- path,
- NULL))
- {
- SetErrnoFromWinError(GetLastError());
- LOG_STRERROR_FILE(GNUNET_ERROR_TYPE_ERROR,
- "SearchPath",
- non_const_filename);
- GNUNET_free(non_const_filename);
- GNUNET_free(pathbuf);
- return NULL;
- }
- else
- LOG(GNUNET_ERROR_TYPE_DEBUG, "Found `%s' in PATH `%s'\n", path, pathbuf);
- GNUNET_free(pathbuf);
- GNUNET_free(non_const_filename);
-
- /* Count the number of arguments */
- arg = (char **)argv;
- while (*arg)
- {
- arg++;
- argcount++;
- }
-
- /* Allocate a copy argv */
- non_const_argv = GNUNET_malloc(sizeof(char *) * (argcount + 1));
-
- /* Copy all argv strings */
- argcount = 0;
- arg = (char **)argv;
- while (*arg)
- {
- if (arg == argv)
- non_const_argv[argcount] = GNUNET_strdup(path);
- else
- non_const_argv[argcount] = GNUNET_strdup(*arg);
- arg++;
- argcount++;
- }
- non_const_argv[argcount] = NULL;
-
- /* Count cmd len */
- cmdlen = 1;
- arg = non_const_argv;
- while (*arg)
- {
- cmdlen = cmdlen + strlen(*arg) + 4;
- arg++;
- }
-
- /* Allocate and create cmd */
- cmd = idx = GNUNET_malloc(sizeof(char) * cmdlen);
- arg = non_const_argv;
- while (*arg)
- {
- char arg_last_char = (*arg)[strlen(*arg) - 1];
- idx += sprintf(idx,
- "\"%s%s\"%s",
- *arg,
- arg_last_char == '\\' ? "\\" : "",
- *(arg + 1) ? " " : "");
- arg++;
- }
-
- while (argcount > 0)
- GNUNET_free(non_const_argv[--argcount]);
- GNUNET_free(non_const_argv);
-
- memset(&start, 0, sizeof(start));
- start.cb = sizeof(start);
- if ((pipe_stdin != NULL) || (pipe_stdout != NULL) || (std_inheritance != 0))
- start.dwFlags |= STARTF_USESTDHANDLES;
-
- stdih = GetStdHandle(STD_INPUT_HANDLE);
- GetHandleInformation(stdih, &stdif);
- if (pipe_stdin != NULL)
- {
- GNUNET_DISK_internal_file_handle_(
- GNUNET_DISK_pipe_handle(pipe_stdin, GNUNET_DISK_PIPE_END_READ),
- &stdin_handle,
- sizeof(HANDLE));
- start.hStdInput = stdin_handle;
- }
- else if (stdih)
- {
- if (std_inheritance & GNUNET_OS_INHERIT_STD_IN)
- {
- SetHandleInformation(stdih, HANDLE_FLAG_INHERIT, 1);
- if (pipe_stdin == NULL)
- start.hStdInput = stdih;
- }
- else
- SetHandleInformation(stdih, HANDLE_FLAG_INHERIT, 0);
- }
-
-
- stdoh = GetStdHandle(STD_OUTPUT_HANDLE);
- GetHandleInformation(stdoh, &stdof);
- if (NULL != pipe_stdout)
- {
- GNUNET_DISK_internal_file_handle_(
- GNUNET_DISK_pipe_handle(pipe_stdout, GNUNET_DISK_PIPE_END_WRITE),
- &stdout_handle,
- sizeof(HANDLE));
- start.hStdOutput = stdout_handle;
- }
- else if (stdoh)
- {
- if (std_inheritance & GNUNET_OS_INHERIT_STD_OUT)
- {
- SetHandleInformation(stdoh, HANDLE_FLAG_INHERIT, 1);
- if (pipe_stdout == NULL)
- start.hStdOutput = stdoh;
- }
- else
- SetHandleInformation(stdoh, HANDLE_FLAG_INHERIT, 0);
- }
-
- stdeh = GetStdHandle(STD_ERROR_HANDLE);
- GetHandleInformation(stdeh, &stdef);
- if (stdeh)
- {
- if (std_inheritance & GNUNET_OS_INHERIT_STD_ERR)
- {
- SetHandleInformation(stdeh, HANDLE_FLAG_INHERIT, 1);
- start.hStdError = stdeh;
- }
- else
- SetHandleInformation(stdeh, HANDLE_FLAG_INHERIT, 0);
- }
-
- if (GNUNET_YES == pipe_control)
- {
- struct GNUNET_DISK_PipeHandle *childpipe;
- childpipe = GNUNET_DISK_pipe(GNUNET_NO, GNUNET_NO, GNUNET_YES, GNUNET_NO);
- if (NULL == childpipe)
- return NULL;
- childpipe_read =
- GNUNET_DISK_pipe_detach_end(childpipe, GNUNET_DISK_PIPE_END_READ);
- childpipe_write =
- GNUNET_DISK_pipe_detach_end(childpipe, GNUNET_DISK_PIPE_END_WRITE);
- GNUNET_DISK_pipe_close(childpipe);
- if ((NULL == childpipe_read) || (NULL == childpipe_write) ||
- (GNUNET_OK != GNUNET_DISK_internal_file_handle_(childpipe_read,
- &childpipe_read_handle,
- sizeof(HANDLE))))
- {
- if (childpipe_read)
- GNUNET_DISK_file_close(childpipe_read);
- if (childpipe_write)
- GNUNET_DISK_file_close(childpipe_write);
- GNUNET_free(cmd);
- return NULL;
- }
- /* Unlike *nix variant, we don't dup the handle, so can't close
- * filehandle right now.
- */
- SetHandleInformation(childpipe_read_handle, HANDLE_FLAG_INHERIT, 1);
- }
- else
- {
- childpipe_read = NULL;
- childpipe_write = NULL;
- }
-
- if (lsocks != NULL && lsocks[0] != INVALID_SOCKET)
- {
- lsocks_pipe =
- GNUNET_DISK_pipe(GNUNET_YES, GNUNET_YES, GNUNET_YES, GNUNET_NO);
-
- if (lsocks_pipe == NULL)
- {
- GNUNET_free(cmd);
- GNUNET_DISK_pipe_close(lsocks_pipe);
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_DISK_file_close(childpipe_write);
- GNUNET_DISK_file_close(childpipe_read);
- }
- return NULL;
- }
- lsocks_write_fd =
- GNUNET_DISK_pipe_handle(lsocks_pipe, GNUNET_DISK_PIPE_END_WRITE);
- GNUNET_DISK_internal_file_handle_(lsocks_write_fd,
- &lsocks_write,
- sizeof(HANDLE));
- GNUNET_DISK_internal_file_handle_(
- GNUNET_DISK_pipe_handle(lsocks_pipe, GNUNET_DISK_PIPE_END_READ),
- &lsocks_read,
- sizeof(HANDLE));
- }
- else
- {
- lsocks_pipe = NULL;
- lsocks_write_fd = NULL;
- }
-
- env_off = 0;
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_asprintf(&our_env[env_off++], "%s=", GNUNET_OS_CONTROL_PIPE);
- GNUNET_asprintf(&our_env[env_off++], "%p", childpipe_read_handle);
- }
- if ((lsocks != NULL) && (lsocks[0] != INVALID_SOCKET))
- {
- /*This will tell the child that we're going to send lsocks over the pipe*/
- GNUNET_asprintf(&our_env[env_off++], "%s=", "GNUNET_OS_READ_LSOCKS");
- GNUNET_asprintf(&our_env[env_off++], "%lu", lsocks_read);
- }
- our_env[env_off++] = NULL;
- env_block = CreateCustomEnvTable(our_env);
- while (0 > env_off)
- GNUNET_free_non_null(our_env[--env_off]);
-
- wpath_len = 0;
- if (NULL ==
- (wpath =
- u8_to_u16((uint8_t *)path, 1 + strlen(path), NULL, &wpath_len)))
- {
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Failed to convert `%s' from UTF-8 to UTF-16: %d\n",
- path,
- errno);
- GNUNET_free(env_block);
- GNUNET_free(cmd);
- if (lsocks_pipe)
- GNUNET_DISK_pipe_close(lsocks_pipe);
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_DISK_file_close(childpipe_write);
- GNUNET_DISK_file_close(childpipe_read);
- }
- return NULL;
- }
-
- wcmd_len = 0;
- if (NULL ==
- (wcmd = u8_to_u16((uint8_t *)cmd, 1 + strlen(cmd), NULL, &wcmd_len)))
- {
- LOG(GNUNET_ERROR_TYPE_DEBUG,
- "Failed to convert `%s' from UTF-8 to UTF-16: %d\n",
- cmd,
- errno);
- GNUNET_free(env_block);
- GNUNET_free(cmd);
- free(wpath);
- if (lsocks_pipe)
- GNUNET_DISK_pipe_close(lsocks_pipe);
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_DISK_file_close(childpipe_write);
- GNUNET_DISK_file_close(childpipe_read);
- }
- return NULL;
- }
-
- create_no_window = 0;
- {
- HANDLE console_input = CreateFile("CONIN$",
- GENERIC_READ,
- FILE_SHARE_READ | FILE_SHARE_WRITE,
- NULL,
- OPEN_EXISTING,
- 0,
- NULL);
- if (INVALID_HANDLE_VALUE == console_input)
- create_no_window = CREATE_NO_WINDOW;
- else
- CloseHandle(console_input);
- }
-
- bresult = CreateProcessW(wpath,
- wcmd,
- NULL,
- NULL,
- GNUNET_YES,
- create_no_window | CREATE_SUSPENDED,
- env_block,
- NULL,
- &start,
- &proc);
- error_code = GetLastError();
-
- if ((NULL == pipe_stdin) && (stdih))
- SetHandleInformation(stdih, HANDLE_FLAG_INHERIT, stdif);
-
-
- if ((NULL == pipe_stdout) && (stdoh))
- SetHandleInformation(stdoh, HANDLE_FLAG_INHERIT, stdof);
-
- if (stdeh)
- SetHandleInformation(stdeh, HANDLE_FLAG_INHERIT, stdef);
-
- if (!bresult)
- LOG(GNUNET_ERROR_TYPE_ERROR,
- "CreateProcess(%s, %s) failed: %lu\n",
- path,
- cmd,
- error_code);
-
- GNUNET_free(env_block);
- GNUNET_free(cmd);
- free(wpath);
- free(wcmd);
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_DISK_file_close(childpipe_read);
- }
-
- if (!bresult)
- {
- if (GNUNET_YES == pipe_control)
- {
- GNUNET_DISK_file_close(childpipe_write);
- }
- if (NULL != lsocks)
- GNUNET_DISK_pipe_close(lsocks_pipe);
- SetErrnoFromWinError(error_code);
- return NULL;
- }
-
- gnunet_proc = GNUNET_new(struct GNUNET_OS_Process);
- gnunet_proc->pid = proc.dwProcessId;
- gnunet_proc->handle = proc.hProcess;
- gnunet_proc->control_pipe = childpipe_write;
-
- CreateThread(NULL, 64000, &child_wait_thread, (void *)gnunet_proc, 0, NULL);
-
- ResumeThread(proc.hThread);
- CloseHandle(proc.hThread);
-
- if ((NULL == lsocks) || (INVALID_SOCKET == lsocks[0]))
- return gnunet_proc;
-
- GNUNET_DISK_pipe_close_end(lsocks_pipe, GNUNET_DISK_PIPE_END_READ);
-
- /* This is a replacement for "goto error" that doesn't use goto */
- fail = 1;
- do
- {
- ssize_t wrote;
- uint64_t size;
- uint64_t count;
- unsigned int i;
-
- /* Tell the number of sockets */
- for (count = 0; lsocks && lsocks[count] != INVALID_SOCKET; count++)
- ;
-
- wrote = GNUNET_DISK_file_write(lsocks_write_fd, &count, sizeof(count));
- if (sizeof(count) != wrote)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "Failed to write %u count bytes to the child: %lu\n",
- sizeof(count),
- GetLastError());
- break;
- }
- for (i = 0; lsocks && lsocks[i] != INVALID_SOCKET; i++)
- {
- WSAPROTOCOL_INFOA pi;
- /* Get a socket duplication info */
- if (SOCKET_ERROR ==
- WSADuplicateSocketA(lsocks[i], gnunet_proc->pid, &pi))
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "Failed to duplicate an socket[%u]: %lu\n",
- i,
- GetLastError());
- break;
- }
- /* Synchronous I/O is not nice, but we can't schedule this:
- * lsocks will be closed/freed by the caller soon, and until
- * the child creates a duplicate, closing a socket here will
- * close it for good.
- */
- /* Send the size of the structure
- * (the child might be built with different headers...)
- */
- size = sizeof(pi);
- wrote = GNUNET_DISK_file_write(lsocks_write_fd, &size, sizeof(size));
- if (sizeof(size) != wrote)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "Failed to write %u size[%u] bytes to the child: %lu\n",
- sizeof(size),
- i,
- GetLastError());
- break;
- }
- /* Finally! Send the data */
- wrote = GNUNET_DISK_file_write(lsocks_write_fd, &pi, sizeof(pi));
- if (sizeof(pi) != wrote)
- {
- GNUNET_log(GNUNET_ERROR_TYPE_ERROR,
- "Failed to write %u socket[%u] bytes to the child: %lu\n",
- sizeof(pi),
- i,
- GetLastError());
- break;
- }
- }
- /* This will block us until the child makes a final read or closes
- * the pipe (hence no 'wrote' check), since we have to wait for it
- * to duplicate the last socket, before we return and start closing
- * our own copies)
- */
- wrote = GNUNET_DISK_file_write(lsocks_write_fd, &count, sizeof(count));
- fail = 0;
- }
- while (fail);
-
- GNUNET_DISK_file_sync(lsocks_write_fd);
- GNUNET_DISK_pipe_close(lsocks_pipe);
-
- if (fail)
- {
- /* If we can't pass on the socket(s), the child will block forever,
- * better put it out of its misery.
- */
- SafeTerminateProcess(gnunet_proc->handle, 0, 0);
- CloseHandle(gnunet_proc->handle);
- if (NULL != gnunet_proc->control_pipe)
- GNUNET_DISK_file_close(gnunet_proc->control_pipe);
- GNUNET_free(gnunet_proc);
- return NULL;
- }
- return gnunet_proc;
-#endif
}
unsigned long *code,
int options)
{
-#ifndef MINGW
int status;
int ret;
*type = GNUNET_OS_PROCESS_UNKNOWN;
*code = 0;
}
-#else
-#ifndef WNOHANG
-#define WNOHANG 42 /* just a flag for W32, purely internal at this point */
-#endif
-
- HANDLE h;
- DWORD c, error_code, ret;
-
- h = proc->handle;
- ret = proc->pid;
- if (h == NULL || ret == 0)
- {
- LOG(GNUNET_ERROR_TYPE_WARNING,
- "Invalid process information {%d, %08X}\n",
- ret,
- h);
- return GNUNET_SYSERR;
- }
- if (h == NULL)
- h = GetCurrentProcess();
-
- if (WNOHANG != options)
- {
- if (WAIT_OBJECT_0 != WaitForSingleObject(h, INFINITE))
- {
- SetErrnoFromWinError(GetLastError());
- return GNUNET_SYSERR;
- }
- }
- SetLastError(0);
- ret = GetExitCodeProcess(h, &c);
- error_code = GetLastError();
- if (ret == 0 || error_code != NO_ERROR)
- {
- SetErrnoFromWinError(error_code);
- LOG_STRERROR(GNUNET_ERROR_TYPE_WARNING, "GetExitCodeProcess");
- return GNUNET_SYSERR;
- }
- if (STILL_ACTIVE == c)
- {
- *type = GNUNET_OS_PROCESS_RUNNING;
- *code = 0;
- return GNUNET_NO;
- }
- *type = GNUNET_OS_PROCESS_EXITED;
- *code = c;
-#endif
return GNUNET_OK;
}
int
GNUNET_OS_process_wait(struct GNUNET_OS_Process *proc)
{
-#ifndef MINGW
pid_t pid = proc->pid;
pid_t ret;
return GNUNET_SYSERR;
}
return GNUNET_OK;
-#else
- HANDLE h;
-
- h = proc->handle;
- if (NULL == h)
- {
- LOG(GNUNET_ERROR_TYPE_WARNING,
- "Invalid process information {%d, %08X}\n",
- proc->pid,
- h);
- return GNUNET_SYSERR;
- }
- if (NULL == h)
- h = GetCurrentProcess();
-
- if (WAIT_OBJECT_0 != WaitForSingleObject(h, INFINITE))
- {
- SetErrnoFromWinError(GetLastError());
- return GNUNET_SYSERR;
- }
- return GNUNET_OK;
-#endif
}
struct GNUNET_SIGNAL_Context *shc_gterm;
#endif
-#ifndef MINGW
/**
* context of the SIGQUIT handler
*/
* context of hte SIGPIPE handler
*/
struct GNUNET_SIGNAL_Context *shc_pipe;
-#endif
};
/**
* Signal handler called for SIGPIPE.
*/
-#ifndef MINGW
static void
sighandler_pipe()
{
return;
}
-#endif
///**
* @return unique task identifier for the job
* only valid until @a task is started!
*/
-#ifndef MINGW
static struct GNUNET_SCHEDULER_Task *
add_without_sets(struct GNUNET_TIME_Relative delay,
enum GNUNET_SCHEDULER_Priority priority,
init_backtrace(t);
return t;
}
-#endif
/**
{
/* scheduler must be running */
GNUNET_assert(NULL != scheduler_driver);
-
-#if MINGW
- struct GNUNET_NETWORK_FDSet *s;
- struct GNUNET_SCHEDULER_Task * ret;
-
- GNUNET_assert(NULL != fd);
- s = GNUNET_NETWORK_fdset_create();
- GNUNET_NETWORK_fdset_set(s, fd);
- ret = GNUNET_SCHEDULER_add_select(
- priority, delay,
- on_read ? s : NULL,
- on_write ? s : NULL,
- task, task_cls);
- GNUNET_NETWORK_fdset_destroy(s);
- return ret;
-#else
GNUNET_assert(on_read || on_write);
GNUNET_assert(GNUNET_NETWORK_get_fd(fd) >= 0);
return add_without_sets(delay, priority,
NULL,
NULL,
task, task_cls);
-#endif
}
{
/* scheduler must be running */
GNUNET_assert(NULL != scheduler_driver);
-
-#if MINGW
- struct GNUNET_NETWORK_FDSet *s;
- struct GNUNET_SCHEDULER_Task * ret;
-
- GNUNET_assert(NULL != fd);
- s = GNUNET_NETWORK_fdset_create();
- GNUNET_NETWORK_fdset_handle_set(s, fd);
- ret = GNUNET_SCHEDULER_add_select(
- priority, delay,
- on_read ? s : NULL,
- on_write ? s : NULL,
- task, task_cls);
- GNUNET_NETWORK_fdset_destroy(s);
- return ret;
-#else
GNUNET_assert(on_read || on_write);
GNUNET_assert(fd->fd >= 0);
return add_without_sets(delay, priority,
on_read ? fd : NULL,
on_write ? fd : NULL,
task, task_cls);
-#endif
}
sh->shc_gterm = GNUNET_SIGNAL_handler_install(GNUNET_TERM_SIG,
&sighandler_shutdown);
#endif
-#ifndef MINGW
sh->shc_pipe = GNUNET_SIGNAL_handler_install(SIGPIPE,
&sighandler_pipe);
sh->shc_quit = GNUNET_SIGNAL_handler_install(SIGQUIT,
&sighandler_shutdown);
sh->shc_hup = GNUNET_SIGNAL_handler_install(SIGHUP,
&sighandler_shutdown);
-#endif
/* Setup initial tasks */
current_priority = GNUNET_SCHEDULER_PRIORITY_DEFAULT;
#if (SIGTERM != GNUNET_TERM_SIG)
GNUNET_SIGNAL_handler_uninstall(sh->shc_gterm);
#endif
-#ifndef MINGW
GNUNET_SIGNAL_handler_uninstall(sh->shc_pipe);
GNUNET_SIGNAL_handler_uninstall(sh->shc_quit);
GNUNET_SIGNAL_handler_uninstall(sh->shc_hup);
-#endif
GNUNET_DISK_pipe_close(shutdown_pipe_handle);
shutdown_pipe_handle = NULL;
scheduler_driver = NULL;
LOG_STRERROR(GNUNET_ERROR_TYPE_ERROR,
"select");
-#ifndef MINGW
#if USE_LSOF
char lsof[512];
LOG_STRERROR(GNUNET_ERROR_TYPE_WARNING,
"system");
#endif
-#endif
#if DEBUG_FDS
for (struct Scheduled *s = context->scheduled_head;
NULL != s;
}
-#ifdef MINGW
-/**
- * Read listen sockets from the parent process (ARM).
- *
- * @param sh service context to initialize
- * @return NULL-terminated array of sockets on success,
- * NULL if not ok (must bind yourself)
- */
-static struct GNUNET_NETWORK_Handle **
-receive_sockets_from_parent(struct GNUNET_SERVICE_Handle *sh)
-{
- static struct GNUNET_NETWORK_Handle **lsocks;
- const char *env_buf;
- int fail;
- uint64_t count;
- uint64_t i;
- HANDLE lsocks_pipe;
-
- env_buf = getenv("GNUNET_OS_READ_LSOCKS");
- if ((NULL == env_buf) || (strlen(env_buf) <= 0))
- return NULL;
- /* Using W32 API directly here, because this pipe will
- * never be used outside of this function, and it's just too much of a bother
- * to create a GNUnet API that boxes a HANDLE (the way it is done with socks)
- */
- lsocks_pipe = (HANDLE)strtoul(env_buf, NULL, 10);
- if ((0 == lsocks_pipe) || (INVALID_HANDLE_VALUE == lsocks_pipe))
- return NULL;
- fail = 1;
- do
- {
- int ret;
- int fail2;
- DWORD rd;
-
- ret = ReadFile(lsocks_pipe, &count, sizeof(count), &rd, NULL);
- if ((0 == ret) || (sizeof(count) != rd) || (0 == count))
- break;
- lsocks = GNUNET_new_array(count + 1, struct GNUNET_NETWORK_Handle *);
-
- fail2 = 1;
- for (i = 0; i < count; i++)
- {
- WSAPROTOCOL_INFOA pi;
- uint64_t size;
- _win_socket s;
-
- ret = ReadFile(lsocks_pipe, &size, sizeof(size), &rd, NULL);
- if ((0 == ret) || (sizeof(size) != rd) || (sizeof(pi) != size))
- break;
- ret = ReadFile(lsocks_pipe, &pi, sizeof(pi), &rd, NULL);
- if ((0 == ret) || (sizeof(pi) != rd))
- break;
- s = WSASocketA(pi.iAddressFamily,
- pi.iSocketType,
- pi.iProtocol,
- &pi,
- 0,
- WSA_FLAG_OVERLAPPED);
- lsocks[i] = GNUNET_NETWORK_socket_box_native(s);
- if (NULL == lsocks[i])
- break;
- else if (i == count - 1)
- fail2 = 0;
- }
- if (fail2)
- break;
- lsocks[count] = NULL;
- fail = 0;
- }
- while (fail);
- CloseHandle(lsocks_pipe);
-
- if (fail)
- {
- LOG(GNUNET_ERROR_TYPE_ERROR,
- _("Could not access a pre-bound socket, will try to bind myself\n"));
- for (i = 0; (i < count) && (NULL != lsocks[i]); i++)
- GNUNET_break(GNUNET_OK == GNUNET_NETWORK_socket_close(lsocks[i]));
- GNUNET_free(lsocks);
- return NULL;
- }
- return lsocks;
-}
-#endif
-
-
/**
* Create and initialize a listen socket for the server.
*
{
int tolerant;
struct GNUNET_NETWORK_Handle **lsocks;
-
-#ifndef MINGW
const char *nfds;
unsigned int cnt;
int flags;
char dummy[2];
-#endif
if (GNUNET_CONFIGURATION_have_value(sh->cfg, sh->service_name, "TOLERANT"))
{
tolerant = GNUNET_NO;
lsocks = NULL;
-#ifndef MINGW
+
errno = 0;
if ((NULL != (nfds = getenv("LISTEN_FDS"))) &&
(1 == sscanf(nfds, "%u%1s", &cnt, dummy)) && (cnt > 0) &&
}
unsetenv("LISTEN_FDS");
}
-#else
- if (NULL != getenv("GNUNET_OS_READ_LSOCKS"))
- {
- lsocks = receive_sockets_from_parent(sh);
- putenv("GNUNET_OS_READ_LSOCKS=");
- }
-#endif
if (NULL != lsocks)
{
if (NULL == (user = get_user_name(sh)))
return GNUNET_OK; /* keep */
-#ifndef MINGW
+
struct passwd *pws;
errno = 0;
return GNUNET_SYSERR;
}
}
-#endif
+
GNUNET_free(user);
return GNUNET_OK;
}
static int
detach_terminal(struct GNUNET_SERVICE_Handle *sh)
{
-#ifndef MINGW
pid_t pid;
int nullfd;
int filedes[2];
if (-1 == pid)
LOG_STRERROR(GNUNET_ERROR_TYPE_ERROR, "setsid");
sh->ready_confirm_fd = filedes[1];
-#else
- /* FIXME: we probably need to do something else
- * elsewhere in order to fork the process itself... */
- FreeConsole();
-#endif
+
return GNUNET_OK;
}
GNUNET_STRINGS_filename_expand(const char *fil)
{
char *buffer;
-
-#ifndef MINGW
size_t len;
char *fm;
const char *fil_ptr;
-#else
- char *fn;
- long lRet;
-#endif
if (fil == NULL)
return NULL;
-#ifndef MINGW
if (fil[0] == DIR_SEPARATOR)
/* absolute path, just copy */
return GNUNET_strdup(fil);
fil_ptr);
GNUNET_free(fm);
return buffer;
-#else
- fn = GNUNET_malloc(MAX_PATH + 1);
-
- if ((lRet = plibc_conv_to_win_path(fil, fn)) != ERROR_SUCCESS)
- {
- SetErrnoFromWinError(lRet);
- LOG_STRERROR(GNUNET_ERROR_TYPE_WARNING, "plibc_conv_to_win_path");
- return NULL;
- }
- /* is the path relative? */
- if ((0 != strncmp(fn + 1, ":\\", 2)) && (0 != strncmp(fn, "\\\\", 2)))
- {
- char szCurDir[MAX_PATH + 1];
-
- lRet = GetCurrentDirectory(MAX_PATH + 1, szCurDir);
- if (lRet + strlen(fn) + 1 > (MAX_PATH + 1))
- {
- SetErrnoFromWinError(ERROR_BUFFER_OVERFLOW);
- LOG_STRERROR(GNUNET_ERROR_TYPE_WARNING, "GetCurrentDirectory");
- return NULL;
- }
- GNUNET_asprintf(&buffer, "%s\\%s", szCurDir, fn);
- GNUNET_free(fn);
- fn = buffer;
- }
-
- return fn;
-#endif
}
proc = GNUNET_OS_start_process(GNUNET_NO, GNUNET_OS_INHERIT_STD_OUT_AND_ERR,
NULL, pipe_stdout, NULL,
-#if MINGW
- "test_common_logging_dummy",
-#else
"./test_common_logging_dummy",
-#endif
"test_common_logging_dummy", NULL);
GNUNET_assert(NULL != proc);
putenv("GNUNET_FORCE_LOG=");
GNUNET_break(0);
return 8;
}
-#ifndef MINGW
+
if (0 != strcmp(c, "/hello/world"))
-#else
-#define HI "\\hello\\world"
- if (strstr(c, HI) != c + strlen(c) - strlen(HI))
-#endif
{
GNUNET_break(0);
GNUNET_free(c);
GNUNET_log_setup("test_getopt", "WARNING", NULL);
/* suppress output from -h, -v options */
-#ifndef MINGW
+
GNUNET_break(0 == close(1));
-#endif
+
if (0 != testMinimal())
errCnt++;
if (0 != testVerbose())
#if HAVE_SOCKADDR_IN_SIN_LEN
sa.sin_len = (u_char)sizeof(sa);
#endif
-#ifndef MINGW
inet_aton(ROOTSERVER_IP, &sa.sin_addr);
-#else
- sa.sin_addr.S_un.S_addr = inet_addr(ROOTSERVER_IP);
-#endif
+
GNUNET_RESOLVER_hostname_get((const struct sockaddr *)&sa,
sizeof(struct sockaddr), GNUNET_YES, timeout,
&check_rootserver_name, cls);
}
-#ifndef MINGW
static void
taskSig(void *cls)
{
GNUNET_SCHEDULER_run(&taskSig, &ok);
return ok;
}
-#endif
static void
GNUNET_log_setup("test_scheduler", "WARNING", NULL);
ret += check();
ret += checkCancel();
-#ifndef MINGW
ret += checkSignal();
-#endif
ret += checkShutdown();
GNUNET_DISK_pipe_close(p);
NULL);
ret += check("test_service");
ret += check("test_service");
-#ifndef MINGW
s = GNUNET_NETWORK_socket_create(PF_INET6,
SOCK_STREAM,
0);
-#endif
+
if (NULL == s)
{
if ((errno == ENOBUFS) ||
(GNUNET_TIME_UNIT_MILLISECONDS,
7 * 60 * 60 * 1000), GNUNET_YES);
WANTNF(buf, bc);
-#ifndef MINGW
+
hdir = getenv("HOME");
-#else
- hdir = getenv("USERPROFILE");
-#endif
+
GNUNET_snprintf(buf, sizeof(buf), "%s%s", hdir, DIR_SEPARATOR_STR);
b = GNUNET_STRINGS_filename_expand("~");
GNUNET_assert(b != NULL);
+++ /dev/null
-/*
- W32 version of 'cat' program
- Copyright (C) 2012 LRN
-
- cat 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, or (at your
- option) any later version.
-
- cat 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 cat; see the file COPYING. If not, write to the
- Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-#include <stdio.h>
-#include <windows.h>
-#include <stdint.h>
-#include <signal.h>
-
-DWORD WINAPI
-parent_control_thread(LPVOID lpParameter)
-{
- HANDLE h = (HANDLE)lpParameter;
-
- while (TRUE)
- {
- DWORD dw;
- BOOL b;
- unsigned char c;
- b = ReadFile(h, &c, 1, &dw, NULL);
- if (!b)
- {
- ExitProcess(0);
- }
- raise((int)c);
- }
-}
-
-void
-install_parent_control_handler()
-{
- const char *env_buf;
- char *env_buf_end;
- uint64_t pipe_fd;
- HANDLE pipe_handle;
-
- env_buf = getenv("GNUNET_OS_CONTROL_PIPE");
- if ((NULL == env_buf) || (strlen(env_buf) <= 0))
- return;
- errno = 0;
- pipe_fd = strtoull(env_buf, &env_buf_end, 16);
- if ((0 != errno) || (env_buf == env_buf_end))
- return;
- /* Gcc will issue a warning here. What to do with it? */
- pipe_handle = (HANDLE)(uintptr_t)pipe_fd;
- CreateThread(NULL, 0, parent_control_thread, (LPVOID)pipe_handle, 0, NULL);
-}
-
-int
-main(int argc, char **argv)
-{
- HANDLE stdi, stdo;
- BOOL b;
- wchar_t *commandlinew, **argvw;
- int argcw;
- int i;
-
- stdo = GetStdHandle(STD_OUTPUT_HANDLE);
- if (stdo == INVALID_HANDLE_VALUE || stdo == NULL)
- return 1;
-
- commandlinew = GetCommandLineW();
- argvw = CommandLineToArgvW(commandlinew, &argcw);
- if (argvw == NULL)
- return 1;
-
- install_parent_control_handler();
-
- for (i = 1; i < argcw || argcw == 1; i++)
- {
- DWORD r, w;
- int is_dash = wcscmp(NULL == argvw[i] ? L"-" : argvw[i], L"-") == 0;
- if (argcw == 1 || is_dash)
- {
- stdi = GetStdHandle(STD_INPUT_HANDLE);
- if (stdi == INVALID_HANDLE_VALUE)
- {
- fprintf(stderr, "cat: Failed to obtain stdin handle.\n");
- return 4;
- }
- if (stdi == NULL)
- {
- fprintf(stderr, "cat: Have no stdin.\n");
- return 5;
- }
- }
- else
- {
- stdi = CreateFileW(argvw[i], GENERIC_READ, FILE_SHARE_DELETE | FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, NULL);
- if (stdi == INVALID_HANDLE_VALUE)
- {
- wchar_t *msgbuf;
- DWORD le = GetLastError();
- if (0 < FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *)&msgbuf, 0, NULL))
- {
- fprintf(stderr, "cat: Failed to open file `%S'. Error %lu.\n", argvw[i], le);
- return 3;
- }
- fprintf(stderr, "cat: Failed to open file `%S'. Error %lu: %S\n", argvw[i], le, msgbuf);
- if (msgbuf != NULL)
- LocalFree(msgbuf);
- return 2;
- }
- }
- do
- {
- unsigned char c;
- b = ReadFile(stdi, &c, 1, &r, NULL);
- if (b && r > 0)
- {
- b = WriteFile(stdo, &c, 1, &w, NULL);
- if (b == 0)
- {
- wchar_t *msgbuf;
- DWORD le = GetLastError();
- if (0 < FormatMessageW(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, 0, le, 0, (wchar_t *)&msgbuf, 0, NULL))
- {
- fprintf(stderr, "cat: Failed to write into stdout. Error %lu.\n", le);
- return 3;
- }
- fprintf(stderr, "cat: Failed to write into stdout. Error %lu: %S\n", le, msgbuf);
- if (msgbuf != NULL)
- LocalFree(msgbuf);
- return 6;
- }
- }
- }
- while (b && r > 0);
- if (argcw == 1)
- break;
- if (!is_dash)
- CloseHandle(stdi);
- }
- LocalFree(argvw);
- return 0;
-}
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @file util/win.c
- * @brief Helper functions for MS Windows in C++
- * @author Nils Durner
- */
-
-#ifndef _WIN_C
-#define _WIN_C
-
-#include "winproc.h"
-#include "platform.h"
-#include "gnunet_crypto_lib.h"
-#include "gnunet_common.h"
-#include "gnunet_connection_lib.h"
-
-#include <ntdef.h>
-#ifndef INHERITED_ACE
-#define INHERITED_ACE 0x10
-#endif
-
-int plibc_conv_to_win_path(const char *pszUnix, char *pszWindows);
-
-#define _IP_ADAPTER_UNICAST_ADDRESS_HEAD \
- union { \
- struct { \
- ULONG Length; \
- DWORD Flags; \
- }; \
- };
-
-#define _IP_ADAPTER_UNICAST_ADDRESS_BASE \
- SOCKET_ADDRESS Address; \
- IP_PREFIX_ORIGIN PrefixOrigin; \
- IP_SUFFIX_ORIGIN SuffixOrigin; \
- IP_DAD_STATE DadState; \
- ULONG ValidLifetime; \
- ULONG PreferredLifetime; \
- ULONG LeaseLifetime;
-
-#define _IP_ADAPTER_UNICAST_ADDRESS_ADD_VISTA \
- UINT8 OnLinkPrefixLength;
-
-
-#define _IP_ADAPTER_UNICAST_ADDRESS_DEFINE(suffix, addition) \
- typedef struct _IP_ADAPTER_UNICAST_ADDRESS ## suffix { \
- _IP_ADAPTER_UNICAST_ADDRESS_HEAD \
- struct _IP_ADAPTER_UNICAST_ADDRESS ## suffix *Next; \
- _IP_ADAPTER_UNICAST_ADDRESS_BASE \
- addition \
- } IP_ADAPTER_UNICAST_ADDRESS ## suffix, *PIP_ADAPTER_UNICAST_ADDRESS ## suffix;
-
-/* _IP_ADAPTER_UNICAST_ADDRESS_DEFINE(,) defined in w32api headers */
-_IP_ADAPTER_UNICAST_ADDRESS_DEFINE(_VISTA, _IP_ADAPTER_UNICAST_ADDRESS_ADD_VISTA)
-
-
-#ifndef __MINGW64_VERSION_MAJOR
-typedef struct _IP_ADAPTER_WINS_SERVER_ADDRESS {
- union {
- ULONGLONG Alignment;
- struct {
- ULONG Length;
- DWORD Reserved;
- };
- };
- struct _IP_ADAPTER_WINS_SERVER_ADDRESS *Next;
- SOCKET_ADDRESS Address;
-} IP_ADAPTER_WINS_SERVER_ADDRESS, *PIP_ADAPTER_WINS_SERVER_ADDRESS, *PIP_ADAPTER_WINS_SERVER_ADDRESS_LH;
-
-typedef struct _IP_ADAPTER_GATEWAY_ADDRESS {
- union {
- ULONGLONG Alignment;
- struct {
- ULONG Length;
- DWORD Reserved;
- };
- };
- struct _IP_ADAPTER_GATEWAY_ADDRESS *Next;
- SOCKET_ADDRESS Address;
-} IP_ADAPTER_GATEWAY_ADDRESS, *PIP_ADAPTER_GATEWAY_ADDRESS, *PIP_ADAPTER_GATEWAY_ADDRESS_LH;
-#endif
-
-typedef UINT32 NET_IF_COMPARTMENT_ID;
-typedef GUID NET_IF_NETWORK_GUID;
-
-#ifndef __MINGW64_VERSION_MAJOR
-typedef enum _NET_IF_CONNECTION_TYPE {
- NET_IF_CONNECTION_DEDICATED = 1,
- NET_IF_CONNECTION_PASSIVE,
- NET_IF_CONNECTION_DEMAND,
- NET_IF_CONNECTION_MAXIMUM
-} NET_IF_CONNECTION_TYPE, *PNET_IF_CONNECTION_TYPE;
-
-typedef enum {
- TUNNEL_TYPE_NONE = 0,
- TUNNEL_TYPE_OTHER,
- TUNNEL_TYPE_DIRECT,
- TUNNEL_TYPE_6TO4,
- TUNNEL_TYPE_ISATAP,
- TUNNEL_TYPE_TEREDO,
- TUNNEL_TYPE_IPHTTPS
-} TUNNEL_TYPE, *PTUNNEL_TYPE;
-#endif
-
-/*
- A DUID consists of a two-octet type code represented in network byte
- order, followed by a variable number of octets that make up the
- actual identifier. A DUID can be no more than 128 octets long (not
- including the type code).
- */
-#define MAX_DHCPV6_DUID_LENGTH 130
-
-#ifndef __MINGW64_VERSION_MAJOR
-typedef union _NET_LUID {
- ULONG64 Value;
- struct {
- ULONG64 Reserved : 24;
- ULONG64 NetLuidIndex : 24;
- ULONG64 IfType : 16;
- } Info;
-} NET_LUID, *PNET_LUID, IF_LUID;
-
-#define MAX_DNS_SUFFIX_STRING_LENGTH 246
-
-typedef struct _IP_ADAPTER_DNS_SUFFIX {
- struct _IP_ADAPTER_DNS_SUFFIX *Next;
- WCHAR String[MAX_DNS_SUFFIX_STRING_LENGTH];
-} IP_ADAPTER_DNS_SUFFIX, *PIP_ADAPTER_DNS_SUFFIX;
-#endif
-
-
-
-#define _IP_ADAPTER_ADDRESSES_HEAD \
- union { \
- ULONGLONG Alignment; \
- struct { \
- ULONG Length; \
- DWORD IfIndex; \
- }; \
- };
-
-#define _IP_ADAPTER_ADDRESSES_BASE \
- PCHAR AdapterName; \
- PIP_ADAPTER_UNICAST_ADDRESS FirstUnicastAddress; \
- PIP_ADAPTER_ANYCAST_ADDRESS FirstAnycastAddress; \
- PIP_ADAPTER_MULTICAST_ADDRESS FirstMulticastAddress; \
- PIP_ADAPTER_DNS_SERVER_ADDRESS FirstDnsServerAddress; \
- PWCHAR DnsSuffix; \
- PWCHAR Description; \
- PWCHAR FriendlyName; \
- BYTE PhysicalAddress[MAX_ADAPTER_ADDRESS_LENGTH]; \
- DWORD PhysicalAddressLength; \
- DWORD Flags; \
- DWORD Mtu; \
- DWORD IfType; \
- IF_OPER_STATUS OperStatus;
-
-#define _IP_ADAPTER_ADDRESSES_ADD_XPSP1 \
- DWORD Ipv6IfIndex; \
- DWORD ZoneIndices[16]; \
- PIP_ADAPTER_PREFIX FirstPrefix; \
-
-
-#define _IP_ADAPTER_ADDRESSES_ADD_VISTA \
- _IP_ADAPTER_ADDRESSES_ADD_XPSP1 \
- ULONG64 TransmitLinkSpeed; \
- ULONG64 ReceiveLinkSpeed; \
- PIP_ADAPTER_WINS_SERVER_ADDRESS_LH FirstWinsServerAddress; \
- PIP_ADAPTER_GATEWAY_ADDRESS_LH FirstGatewayAddress; \
- ULONG Ipv4Metric; \
- ULONG Ipv6Metric; \
- IF_LUID Luid; \
- SOCKET_ADDRESS Dhcpv4Server; \
- NET_IF_COMPARTMENT_ID CompartmentId; \
- NET_IF_NETWORK_GUID NetworkGuid; \
- NET_IF_CONNECTION_TYPE ConnectionType; \
- TUNNEL_TYPE TunnelType; \
- SOCKET_ADDRESS Dhcpv6Server; \
- BYTE Dhcpv6ClientDuid[MAX_DHCPV6_DUID_LENGTH]; \
- ULONG Dhcpv6ClientDuidLength; \
- ULONG Dhcpv6Iaid;
-
-#define _IP_ADAPTER_ADDRESSES_ADD_2008_OR_VISTASP1 \
- _IP_ADAPTER_ADDRESSES_ADD_VISTA \
- PIP_ADAPTER_DNS_SUFFIX FirstDnsSuffix;
-
-#define _IP_ADAPTER_ADDRESSES_DEFINE(suffix, addition) \
- typedef struct _IP_ADAPTER_ADDRESSES ## suffix { \
- _IP_ADAPTER_ADDRESSES_HEAD \
- struct _IP_ADAPTER_ADDRESSES ## suffix *Next; \
- _IP_ADAPTER_ADDRESSES_BASE \
- addition \
- } IP_ADAPTER_ADDRESSES ## suffix, *PIP_ADAPTER_ADDRESSES ## suffix;
-
-
-/* _IP_ADAPTER_ADDRESSES_DEFINE(,) defined in w32api headers */
-_IP_ADAPTER_ADDRESSES_DEFINE(_XPSP1, _IP_ADAPTER_ADDRESSES_ADD_XPSP1)
-_IP_ADAPTER_ADDRESSES_DEFINE(_VISTA, _IP_ADAPTER_ADDRESSES_ADD_VISTA)
-_IP_ADAPTER_ADDRESSES_DEFINE(_2008_OR_VISTASP1, _IP_ADAPTER_ADDRESSES_ADD_2008_OR_VISTASP1)
-
-static int
-EnumNICs_IPv6_get_ifs_count(_win_socket s)
-{
- DWORD dwret = 0, err;
- int iret;
-
- iret = WSAIoctl(s, SIO_ADDRESS_LIST_QUERY, NULL, 0, NULL, 0,
- &dwret, NULL, NULL);
- err = GetLastError();
- if (iret == SOCKET_ERROR && err == WSAEFAULT)
- return dwret;
- else if (iret == 0)
- return 0;
- return GNUNET_SYSERR;
-}
-
-static int
-EnumNICs_IPv6_get_ifs(_win_socket s, SOCKET_ADDRESS_LIST *inf, int size)
-{
- int iret;
- DWORD dwret = 0;
-
- iret = WSAIoctl(s, SIO_ADDRESS_LIST_QUERY, NULL, 0, inf, size,
- &dwret, NULL, NULL);
-
- if (iret != 0 || dwret != size)
- {
- /* It's supposed to succeed! And size should be the same */
- return GNUNET_SYSERR;
- }
- return GNUNET_OK;
-}
-
-#undef GNUNET_malloc
-#define GNUNET_malloc(a) HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY | \
- HEAP_GENERATE_EXCEPTIONS, a)
-
-#undef GNUNET_free
-#define GNUNET_free(a) HeapFree(GetProcessHeap(), 0, a)
-
-#undef GNUNET_free_non_null
-#define GNUNET_free_non_null(a) do { if ((a) != NULL) GNUNET_free (a); } while (0)
-
-static int
-EnumNICs_IPv4_get_ifs(SOCKET s, INTERFACE_INFO **inf, int *size)
-{
- int iret;
- DWORD dwret = 0;
- DWORD error;
- INTERFACE_INFO *ii = NULL;
- DWORD ii_size = sizeof(INTERFACE_INFO) * 15;
-
- while (TRUE)
- {
- if (ii_size >= sizeof(INTERFACE_INFO) * 1000)
- return GNUNET_SYSERR;
- ii = (INTERFACE_INFO *)GNUNET_malloc(ii_size);
- dwret = 0;
- iret = WSAIoctl(s, SIO_GET_INTERFACE_LIST, NULL, 0, ii, ii_size,
- &dwret, NULL, NULL);
- error = GetLastError();
- if (iret == SOCKET_ERROR)
- {
- if (error == WSAEFAULT)
- {
- GNUNET_free(ii);
- ii_size *= 2;
- continue;
- }
- GNUNET_free(ii);
- return GNUNET_SYSERR;
- }
- else
- {
- *inf = ii;
- *size = dwret;
- return GNUNET_OK;
- }
- }
- return GNUNET_SYSERR;
-}
-
-int
-EnumNICs2(INTERFACE_INFO **ifs4, int *ifs4_len, SOCKET_ADDRESS_LIST **ifs6)
-{
- int result = 0;
- _win_socket s4;
- _win_socket s6;
- int ifs4len = 0;
- int ifs6len = 0;
- INTERFACE_INFO *interfaces4 = NULL;
- SOCKET_ADDRESS_LIST *interfaces6 = NULL;
-
- SetLastError(0);
- s4 = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
- (void)GetLastError();
- SetLastError(0);
- s6 = socket(AF_INET6, SOCK_STREAM, IPPROTO_TCP);
- (void)GetLastError();
- if (s6 != INVALID_SOCKET)
- {
- ifs6len = EnumNICs_IPv6_get_ifs_count(s6);
- if (ifs6len > 0)
- {
- interfaces6 = (SOCKET_ADDRESS_LIST *)GNUNET_malloc(ifs6len);
- result = EnumNICs_IPv6_get_ifs(s6, interfaces6, ifs6len) || result;
- }
- closesocket(s6);
- s6 = INVALID_SOCKET;
- }
-
- if (s4 != INVALID_SOCKET)
- {
- result = EnumNICs_IPv4_get_ifs(s4, &interfaces4, &ifs4len) || result;
- closesocket(s4);
- s4 = INVALID_SOCKET;
- }
- if (ifs6len + ifs4len == 0)
- goto error;
-
- if (!result)
- {
- *ifs4 = interfaces4;
- *ifs4_len = ifs4len;
- *ifs6 = interfaces6;
- return GNUNET_OK;
- }
-error:
- if (interfaces4 != NULL)
- GNUNET_free(interfaces4);
- if (interfaces6 != NULL)
- GNUNET_free(interfaces6);
- if (s4 != INVALID_SOCKET)
- closesocket(s4);
- if (s6 != INVALID_SOCKET)
- closesocket(s6);
- return GNUNET_SYSERR;
-}
-
-
-/**
- * @returns #GNUNET_OK on success, #GNUNET_SYSERR on error
- */
-int
-EnumNICs3(struct EnumNICs3_results **results, int *results_count)
-{
- DWORD dwRetVal = 0;
- int count = 0;
- ULONG flags = /*GAA_FLAG_INCLUDE_PREFIX |*/ GAA_FLAG_SKIP_ANYCAST |
- GAA_FLAG_SKIP_MULTICAST | GAA_FLAG_SKIP_DNS_SERVER;
- struct sockaddr_in6 examplecom6;
- IPAddr examplecom;
- DWORD best_interface = 0;
- DWORD best_interface6 = 0;
-
- int use_enum2 = 0;
- INTERFACE_INFO *interfaces4 = NULL;
- int interfaces4_len = 0;
- SOCKET_ADDRESS_LIST *interfaces6 = NULL;
-
- unsigned long outBufLen = sizeof(IP_ADAPTER_ADDRESSES);
- IP_ADAPTER_ADDRESSES *pCurrentAddress = NULL;
- IP_ADAPTER_ADDRESSES *pAddresses = (IP_ADAPTER_ADDRESSES *)GNUNET_malloc(outBufLen);
-
- if (GetAdaptersAddresses(AF_UNSPEC, flags, NULL, pAddresses, &outBufLen)
- == ERROR_BUFFER_OVERFLOW)
- {
- GNUNET_free(pAddresses);
- pAddresses = (IP_ADAPTER_ADDRESSES *)GNUNET_malloc(outBufLen);
- }
-
- dwRetVal = GetAdaptersAddresses(AF_UNSPEC, flags, NULL, pAddresses, &outBufLen);
-
- if (dwRetVal != NO_ERROR)
- {
- GNUNET_free(pAddresses);
- return GNUNET_SYSERR;
- }
-
- if (pAddresses->Length < sizeof(IP_ADAPTER_ADDRESSES_VISTA))
- {
- use_enum2 = 1;
-
- /* Enumerate NICs using WSAIoctl() */
- if (GNUNET_OK != EnumNICs2(&interfaces4, &interfaces4_len, &interfaces6))
- {
- GNUNET_free(pAddresses);
- return GNUNET_SYSERR;
- }
- }
-
- examplecom = inet_addr("192.0.34.166"); /* www.example.com */
- if (GetBestInterface(examplecom, &best_interface) != NO_ERROR)
- best_interface = 0;
-
- if (GNGetBestInterfaceEx != NULL)
- {
- examplecom6.sin6_family = AF_INET6;
- examplecom6.sin6_port = 0;
- examplecom6.sin6_flowinfo = 0;
- examplecom6.sin6_scope_id = 0;
- inet_pton(AF_INET6, "2001:500:88:200:0:0:0:10",
- (struct sockaddr *)&examplecom6.sin6_addr);
- dwRetVal = GNGetBestInterfaceEx((struct sockaddr *)&examplecom6,
- &best_interface6);
- if (dwRetVal != NO_ERROR)
- best_interface6 = 0;
- }
-
- /* Give IPv6 a priority */
- if (best_interface6 != 0)
- best_interface = best_interface6;
-
- count = 0;
- for (pCurrentAddress = pAddresses;
- pCurrentAddress != NULL; pCurrentAddress = pCurrentAddress->Next)
- {
- if (pCurrentAddress->OperStatus == IfOperStatusUp)
- {
- IP_ADAPTER_UNICAST_ADDRESS *unicast = NULL;
- for (unicast = pCurrentAddress->FirstUnicastAddress; unicast != NULL;
- unicast = unicast->Next)
- {
- if ((unicast->Address.lpSockaddr->sa_family == AF_INET ||
- unicast->Address.lpSockaddr->sa_family == AF_INET6) &&
- (unicast->DadState == IpDadStateDeprecated ||
- unicast->DadState == IpDadStatePreferred))
- count += 1;
- }
- }
- }
-
- if (count == 0)
- {
- *results = NULL;
- *results_count = 0;
- GNUNET_free(pAddresses);
- GNUNET_free_non_null(interfaces4);
- GNUNET_free_non_null(interfaces6);
- return GNUNET_OK;
- }
-
- *results = (struct EnumNICs3_results *)GNUNET_malloc(
- sizeof(struct EnumNICs3_results) * count);
- *results_count = count;
-
- count = 0;
- for (pCurrentAddress = pAddresses;
- pCurrentAddress != NULL; pCurrentAddress = pCurrentAddress->Next)
- {
- struct EnumNICs3_results *r;
- IP_ADAPTER_UNICAST_ADDRESS *unicast = NULL;
- if (pCurrentAddress->OperStatus != IfOperStatusUp)
- continue;
- for (unicast = pCurrentAddress->FirstUnicastAddress; unicast != NULL;
- unicast = unicast->Next)
- {
- int i, j;
- int mask_length = -1;
- char dst[INET6_ADDRSTRLEN + 1];
-
- if ((unicast->Address.lpSockaddr->sa_family != AF_INET &&
- unicast->Address.lpSockaddr->sa_family != AF_INET6) ||
- (unicast->DadState != IpDadStateDeprecated &&
- unicast->DadState != IpDadStatePreferred))
- continue;
-
- r = &(*results)[count];
- r->flags = 0;
- if (pCurrentAddress->IfIndex > 0 &&
- pCurrentAddress->IfIndex == best_interface &&
- unicast->Address.lpSockaddr->sa_family == AF_INET)
- r->is_default = 1;
- else if (pCurrentAddress->Ipv6IfIndex > 0 &&
- pCurrentAddress->Ipv6IfIndex == best_interface6 &&
- unicast->Address.lpSockaddr->sa_family == AF_INET6)
- r->is_default = 1;
- else
- r->is_default = 0;
-
- /* Don't choose default interface twice */
- if (r->is_default)
- best_interface = best_interface6 = 0;
-
- if (!use_enum2)
- {
- GNUNET_memcpy(&r->address, unicast->Address.lpSockaddr,
- unicast->Address.iSockaddrLength);
- memset(&r->mask, 0, sizeof(struct sockaddr));
- mask_length = ((IP_ADAPTER_UNICAST_ADDRESS_VISTA *)unicast)->
- OnLinkPrefixLength;
- /* OnLinkPrefixLength is the number of leading 1s in the mask.
- * OnLinkPrefixLength is available on Vista and later (hence use_enum2).
- */
- if (unicast->Address.lpSockaddr->sa_family == AF_INET)
- {
- struct sockaddr_in *m = (struct sockaddr_in *)&r->mask;
- for (i = 0; i < mask_length; i++)
- ((unsigned char *)&m->sin_addr)[i / 8] |= 0x80 >> (i % 8);
- }
- else if (unicast->Address.lpSockaddr->sa_family == AF_INET6)
- {
- struct sockaddr_in6 *m = (struct sockaddr_in6 *)&r->mask;
- struct sockaddr_in6 *b = (struct sockaddr_in6 *)&r->broadcast;
- for (i = 0; i < mask_length; i++)
- ((unsigned char *)&m->sin6_addr)[i / 8] |= 0x80 >> (i % 8);
- GNUNET_memcpy(&r->broadcast, &r->address, unicast->Address.iSockaddrLength);
- for (i = mask_length; i < 128; i++)
- ((unsigned char *)&b->sin6_addr)[i / 8] |= 0x80 >> (i % 8);
- }
- r->flags |= ENUMNICS3_MASK_OK;
- }
- else
- {
- int found = 0;
- if (unicast->Address.lpSockaddr->sa_family == AF_INET)
- {
- for (i = 0; !found && i < interfaces4_len / sizeof(INTERFACE_INFO); i++)
- {
- struct sockaddr_in *m = (struct sockaddr_in *)&r->mask;
- GNUNET_memcpy(&interfaces4[i].iiAddress.Address,
- unicast->Address.lpSockaddr,
- unicast->Address.iSockaddrLength);
- found = 1;
- GNUNET_memcpy(&r->address, &interfaces4[i].iiAddress.Address,
- sizeof(struct sockaddr_in));
- GNUNET_memcpy(&r->mask, &interfaces4[i].iiNetmask.Address,
- sizeof(struct sockaddr_in));
- for (mask_length = 0;
- ((unsigned char *)&m->sin_addr)[mask_length / 8] &
- 0x80 >> (mask_length % 8); mask_length++)
- {
- }
- r->flags |= ENUMNICS3_MASK_OK;
- }
- }
- else if (unicast->Address.lpSockaddr->sa_family == AF_INET6)
- {
- for (i = 0;
- interfaces6 != NULL && !found && i < interfaces6->iAddressCount;
- i++)
- {
- GNUNET_memcpy(interfaces6->Address[i].lpSockaddr,
- unicast->Address.lpSockaddr,
- unicast->Address.iSockaddrLength);
- found = 1;
- GNUNET_memcpy(&r->address, interfaces6->Address[i].lpSockaddr,
- sizeof(struct sockaddr_in6));
- /* TODO: Find a way to reliably get network mask for IPv6 on XP */
- memset(&r->mask, 0, sizeof(struct sockaddr));
- r->flags &= ~ENUMNICS3_MASK_OK;
- }
- }
- if (!found)
- {
- DebugBreak();
- }
- }
- if (unicast->Address.lpSockaddr->sa_family == AF_INET)
- {
- struct sockaddr_in *m = (struct sockaddr_in *)&r->mask;
- struct sockaddr_in *a = (struct sockaddr_in *)&r->address;
- /* copy address to broadcast, then flip all the trailing bits not
- * falling under netmask to 1,
- * so we get, 192.168.0.255 from, say, 192.168.0.43 with mask == 24.
- */
- GNUNET_memcpy(&r->broadcast, &r->address, unicast->Address.iSockaddrLength);
- for (i = mask_length; i < 32; i++)
- ((unsigned char *)&m->sin_addr)[i / 8] |= 0x80 >> (i % 8);
- r->flags |= ENUMNICS3_BCAST_OK;
- r->addr_size = sizeof(struct sockaddr_in);
- inet_ntop(AF_INET, &a->sin_addr, dst, INET_ADDRSTRLEN);
- }
- else if (unicast->Address.lpSockaddr->sa_family == AF_INET6)
- {
- struct sockaddr_in6 *a = (struct sockaddr_in6 *)&r->address;
- /* for IPv6 broadcast is not defined, zero it down */
- memset(&r->broadcast, 0, sizeof(struct sockaddr));
- r->flags &= ~ENUMNICS3_BCAST_OK;
- r->addr_size = sizeof(struct sockaddr_in6);
- inet_ntop(AF_INET6, &a->sin6_addr, dst, INET6_ADDRSTRLEN);
- }
-
- i = 0;
- i += snprintf(&r->pretty_name[i], 1000 - i > 0 ? 1000 - i : 0,
- "%S (%s", pCurrentAddress->FriendlyName, dst);
- for (j = 0; j < pCurrentAddress->PhysicalAddressLength; j++)
- i += snprintf(&r->pretty_name[i], 1000 - i > 0 ? 1000 - i : 0,
- "%s%02X", j > 0 ? ":" : " - ", pCurrentAddress->PhysicalAddress[j]);
- i += snprintf(&r->pretty_name[i], 1000 - i > 0 ? 1000 - i : 0, ")");
- r->pretty_name[1000] = '\0';
- count += 1;
- }
- }
-
- if (use_enum2)
- {
- GNUNET_free_non_null(interfaces4);
- GNUNET_free_non_null(interfaces6);
- }
-
- GNUNET_free(pAddresses);
- return GNUNET_OK;
-}
-
-void
-EnumNICs3_free(struct EnumNICs3_results *r)
-{
- GNUNET_free_non_null(r);
-}
-
-
-/**
- * Lists all network interfaces in a combo box
- * Used by the basic GTK configurator
- *
- * @param callback function to call for each NIC
- * @param callback_cls closure for callback
- */
-int
-ListNICs(void (*callback)(void *, const char *, int), void * callback_cls)
-{
- int r;
- int i;
- struct EnumNICs3_results *results = NULL;
- int results_count;
-
- r = EnumNICs3(&results, &results_count);
- if (r != GNUNET_OK)
- return GNUNET_NO;
-
- for (i = 0; i < results_count; i++)
- callback(callback_cls, results[i].pretty_name, results[i].is_default);
- GNUNET_free_non_null(results);
- return GNUNET_YES;
-}
-
-/**
- * @brief Installs the Windows service
- * @param servicename name of the service as diplayed by the SCM
- * @param application path to the application binary
- * @param username the name of the service's user account
- * @returns 0 on success
- * 1 if the Windows version doesn't support services
- * 2 if the SCM could not be opened
- * 3 if the service could not be created
- */
-int InstallAsService(char *servicename, char *application, char *username)
-{
- SC_HANDLE hManager, hService;
- char szEXE[_MAX_PATH + 17] = "\"";
- char *user = NULL;
-
- if (!GNOpenSCManager)
- return 1;
-
- plibc_conv_to_win_path(application, szEXE + 1);
- strcat(szEXE, "\" --win-service");
- hManager = GNOpenSCManager(NULL, NULL, SC_MANAGER_CREATE_SERVICE);
- if (!hManager)
- return 2;
-
- if (username)
- {
- user = (char *)malloc(strlen(username) + 3);
- sprintf(user, ".\\%s", username);
- }
-
- hService = GNCreateService(hManager, (LPCTSTR)servicename, (LPCTSTR)servicename, 0,
- SERVICE_WIN32_OWN_PROCESS, SERVICE_AUTO_START, SERVICE_ERROR_NORMAL, (LPCTSTR)szEXE,
- NULL, NULL, NULL, (LPCTSTR)user, (LPCTSTR)username);
-
- if (user)
- free(user);
-
- if (!hService)
- return 3;
-
- GNCloseServiceHandle(hService);
-
- return 0;
-}
-
-
-/**
- * @brief Uninstall Windows service
- * @param servicename name of the service to delete
- * @returns 0 on success
- * 1 if the Windows version doesn't support services
- * 2 if the SCM could not be openend
- * 3 if the service cannot be accessed
- * 4 if the service cannot be deleted
- */
-int
-UninstallService(char *servicename)
-{
- SC_HANDLE hManager, hService;
-
- if (!GNOpenSCManager)
- return 1;
-
- hManager = GNOpenSCManager(NULL, NULL, SC_MANAGER_CONNECT);
- if (!hManager)
- return 2;
-
- if (!(hService = GNOpenService(hManager, (LPCTSTR)servicename, DELETE)))
- {
- if (GetLastError() != ERROR_SERVICE_DOES_NOT_EXIST)
- return 3;
- else
- goto closeSCM;
- }
-
- if (!GNDeleteService(hService))
- if (GetLastError() != ERROR_SERVICE_MARKED_FOR_DELETE)
- return 4;
-
-closeSCM:
- GNCloseServiceHandle(hService);
-
- return 0;
-}
-
-/**
- * @author Scott Field, Microsoft
- * @see http://support.microsoft.com/?scid=kb;en-us;132958
- * @date 12-Jul-95
- */
-void
-_InitLsaString(PLSA_UNICODE_STRING LsaString, LPWSTR String)
-{
- DWORD StringLength;
-
- if (String == NULL)
- {
- LsaString->Buffer = NULL;
- LsaString->Length = 0;
- LsaString->MaximumLength = 0;
- return;
- }
-
- StringLength = wcslen(String);
- LsaString->Buffer = String;
- LsaString->Length = (USHORT)StringLength * sizeof(WCHAR);
- LsaString->MaximumLength = (USHORT)(StringLength + 1) * sizeof(WCHAR);
-}
-
-
-/**
- * @author Scott Field, Microsoft
- * @see http://support.microsoft.com/?scid=kb;en-us;132958
- * @date 12-Jul-95
- */
-NTSTATUS
-_OpenPolicy(LPWSTR ServerName, DWORD DesiredAccess, PLSA_HANDLE PolicyHandle)
-{
- LSA_OBJECT_ATTRIBUTES ObjectAttributes;
- LSA_UNICODE_STRING ServerString;
- PLSA_UNICODE_STRING Server = NULL;
-
- /* Always initialize the object attributes to all zeroes. */
- ZeroMemory(&ObjectAttributes, sizeof(ObjectAttributes));
-
- if (ServerName != NULL)
- {
- /* Make a LSA_UNICODE_STRING out of the LPWSTR passed in */
- _InitLsaString(&ServerString, ServerName);
- Server = &ServerString;
- }
-
- /* Attempt to open the policy. */
- return GNLsaOpenPolicy(Server,
- &ObjectAttributes, DesiredAccess, PolicyHandle);
-}
-
-/**
- * @brief Obtain a SID representing the supplied account on the supplied system
- * @return TRUE on success, FALSE on failure
- * @author Scott Field, Microsoft
- * @date 12-Jul-95
- * @remarks A buffer is allocated which contains the SID representing the
- * supplied account. This buffer should be freed when it is no longer
- * needed by calling\n
- * HeapFree(GetProcessHeap(), 0, buffer)
- * @remarks Call GetLastError() to obtain extended error information.
- * @see http://support.microsoft.com/?scid=kb;en-us;132958
- */
-BOOL
-_GetAccountSid(LPCTSTR SystemName, LPCTSTR AccountName, PSID * Sid)
-{
- LPTSTR ReferencedDomain = NULL;
- DWORD cbSid = 128; /* initial allocation attempt */
- DWORD cchReferencedDomain = 16; /* initial allocation size */
- SID_NAME_USE peUse;
- BOOL bSuccess = FALSE; /* assume this function will fail */
-
- /* initial memory allocations */
- if ((*Sid = HeapAlloc(GetProcessHeap(), 0, cbSid)) == NULL)
- return FALSE;
-
- if ((ReferencedDomain = (LPTSTR)HeapAlloc(GetProcessHeap(),
- 0,
- cchReferencedDomain *
- sizeof(TCHAR))) == NULL)
- return FALSE;
-
- /* Obtain the SID of the specified account on the specified system. */
- while (!GNLookupAccountName(SystemName, /* machine to lookup account on */
- AccountName, /* account to lookup */
- *Sid, /* SID of interest */
- &cbSid, /* size of SID */
- ReferencedDomain, /* domain account was found on */
- &cchReferencedDomain, &peUse))
- {
- if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)
- {
- /* reallocate memory */
- if ((*Sid = HeapReAlloc(GetProcessHeap(), 0, *Sid, cbSid)) == NULL)
- return FALSE;
-
- if ((ReferencedDomain = (LPTSTR)HeapReAlloc(GetProcessHeap(),
- 0,
- ReferencedDomain,
- cchReferencedDomain
- * sizeof(TCHAR))) == NULL)
- return FALSE;
- }
- else
- goto end;
- }
-
- /* Indicate success. */
- bSuccess = TRUE;
-
-end:
- /* Cleanup and indicate failure, if appropriate. */
- HeapFree(GetProcessHeap(), 0, ReferencedDomain);
-
- if (!bSuccess)
- {
- if (*Sid != NULL)
- {
- HeapFree(GetProcessHeap(), 0, *Sid);
- *Sid = NULL;
- }
- }
-
- return bSuccess;
-}
-
-/**
- * @author Scott Field, Microsoft
- * @see http://support.microsoft.com/?scid=kb;en-us;132958
- * @date 12-Jul-95
- */
-NTSTATUS
-_SetPrivilegeOnAccount(LSA_HANDLE PolicyHandle,/* open policy handle */
- PSID AccountSid, /* SID to grant privilege to */
- LPWSTR PrivilegeName, /* privilege to grant (Unicode) */
- BOOL bEnable /* enable or disable */
- )
-{
- LSA_UNICODE_STRING PrivilegeString;
-
- /* Create a LSA_UNICODE_STRING for the privilege name. */
- _InitLsaString(&PrivilegeString, PrivilegeName);
-
- /* grant or revoke the privilege, accordingly */
- if (bEnable)
- {
- NTSTATUS i;
-
- i = GNLsaAddAccountRights(PolicyHandle, /* open policy handle */
- AccountSid, /* target SID */
- &PrivilegeString, /* privileges */
- 1 /* privilege count */
- );
- return i;
- }
- else
- {
- return GNLsaRemoveAccountRights(PolicyHandle, /* open policy handle */
- AccountSid, /* target SID */
- FALSE, /* do not disable all rights */
- &PrivilegeString, /* privileges */
- 1 /* privilege count */
- );
- }
-}
-
-/**
- * @brief Create a Windows service account
- * @return 0 on success, > 0 otherwise
- * @param pszName the name of the account
- * @param pszDesc description of the account
- */
-int
-CreateServiceAccount(const char *pszName,
- const char *pszDesc)
-{
- USER_INFO_1 ui;
- USER_INFO_1008 ui2;
- NET_API_STATUS nStatus;
- wchar_t wszName[MAX_NAME_LENGTH], wszDesc[MAX_NAME_LENGTH];
- LSA_HANDLE hPolicy;
- PSID pSID;
-
- if (!GNNetUserAdd)
- return 1;
- mbstowcs(wszName, pszName, strlen(pszName) + 1);
- mbstowcs(wszDesc, pszDesc, strlen(pszDesc) + 1);
-
- memset(&ui, 0, sizeof(ui));
- ui.usri1_name = wszName;
- ui.usri1_password = wszName; /* account is locked anyway */
- ui.usri1_priv = USER_PRIV_USER;
- ui.usri1_comment = wszDesc;
- ui.usri1_flags = UF_SCRIPT;
-
- nStatus = GNNetUserAdd(NULL, 1, (LPBYTE)&ui, NULL);
-
- if (nStatus != NERR_Success && nStatus != NERR_UserExists)
- return 2;
-
- ui2.usri1008_flags = UF_PASSWD_CANT_CHANGE | UF_DONT_EXPIRE_PASSWD;
- GNNetUserSetInfo(NULL, wszName, 1008, (LPBYTE)&ui2, NULL);
-
- if (!NT_SUCCESS(_OpenPolicy(NULL, POLICY_ALL_ACCESS, &hPolicy)))
- return 3;
-
- _GetAccountSid(NULL, (LPCTSTR)pszName, &pSID);
-
- if (!NT_SUCCESS(_SetPrivilegeOnAccount(hPolicy, pSID, (LPWSTR)L"SeServiceLogonRight", TRUE)))
- return 4;
-
- _SetPrivilegeOnAccount(hPolicy, pSID, (LPWSTR)L"SeDenyInteractiveLogonRight", TRUE);
- _SetPrivilegeOnAccount(hPolicy, pSID, (LPWSTR)L"SeDenyBatchLogonRight", TRUE);
- _SetPrivilegeOnAccount(hPolicy, pSID, (LPWSTR)L"SeDenyNetworkLogonRight", TRUE);
-
- GNLsaClose(hPolicy);
-
- return 0;
-}
-
-/**
- * @brief Grant permission to a file
- * @param lpszFileName the name of the file or directory
- * @param lpszAccountName the user account
- * @param dwAccessMask the desired access (e.g. GENERIC_ALL)
- * @return TRUE on success
- * @remark based on http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q102102&
- */
-BOOL AddPathAccessRights(char *lpszFileName, char *lpszAccountName,
- DWORD dwAccessMask)
-{
- /* SID variables. */
- SID_NAME_USE snuType;
- TCHAR * szDomain = NULL;
- DWORD cbDomain = 0;
- LPVOID pUserSID = NULL;
- DWORD cbUserSID = 0;
-
- /* File SD variables. */
- PSECURITY_DESCRIPTOR pFileSD = NULL;
- DWORD cbFileSD = 0;
-
- /* New SD variables. */
- SECURITY_DESCRIPTOR newSD;
-
- /* ACL variables. */
- PACL pACL = NULL;
- BOOL fDaclPresent;
- BOOL fDaclDefaulted;
- ACL_SIZE_INFORMATION AclInfo;
-
- /* New ACL variables. */
- PACL pNewACL = NULL;
- DWORD cbNewACL = 0;
-
- /* Temporary ACE. */
- LPVOID pTempAce = NULL;
- UINT CurrentAceIndex = 0;
-
- UINT newAceIndex = 0;
-
- /* Assume function will fail. */
- BOOL fResult = FALSE;
- BOOL fAPISuccess;
-
- SECURITY_INFORMATION secInfo = DACL_SECURITY_INFORMATION;
-
- /**
- * STEP 1: Get SID of the account name specified.
- */
- fAPISuccess = GNLookupAccountName(NULL, (LPCTSTR)lpszAccountName,
- pUserSID, &cbUserSID, (LPTSTR)szDomain, &cbDomain, &snuType);
-
- /* API should have failed with insufficient buffer. */
- if (fAPISuccess)
- goto end;
- else if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)
- {
- goto end;
- }
-
- pUserSID = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, cbUserSID);
- if (!pUserSID)
- {
- goto end;
- }
-
- szDomain = (TCHAR *)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, cbDomain * sizeof(TCHAR));
- if (!szDomain)
- {
- goto end;
- }
-
- fAPISuccess = GNLookupAccountName(NULL, (LPCTSTR)lpszAccountName,
- pUserSID, &cbUserSID, (LPTSTR)szDomain, &cbDomain, &snuType);
- if (!fAPISuccess)
- {
- goto end;
- }
-
- /**
- * STEP 2: Get security descriptor (SD) of the file specified.
- */
- fAPISuccess = GNGetFileSecurity((LPCTSTR)lpszFileName,
- secInfo, pFileSD, 0, &cbFileSD);
-
- /* API should have failed with insufficient buffer. */
- if (fAPISuccess)
- goto end;
- else if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)
- {
- goto end;
- }
-
- pFileSD = (PSECURITY_DESCRIPTOR)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
- cbFileSD);
- if (!pFileSD)
- {
- goto end;
- }
-
- fAPISuccess = GNGetFileSecurity((LPCTSTR)lpszFileName,
- secInfo, pFileSD, cbFileSD, &cbFileSD);
- if (!fAPISuccess)
- {
- goto end;
- }
-
- /**
- * STEP 3: Initialize new SD.
- */
- if (!GNInitializeSecurityDescriptor(&newSD,
- SECURITY_DESCRIPTOR_REVISION))
- {
- goto end;
- }
-
- /**
- * STEP 4: Get DACL from the old SD.
- */
- if (!GNGetSecurityDescriptorDacl(pFileSD, &fDaclPresent, &pACL,
- &fDaclDefaulted))
- {
- goto end;
- }
-
- /**
- * STEP 5: Get size information for DACL.
- */
- AclInfo.AceCount = 0; // Assume NULL DACL.
- AclInfo.AclBytesFree = 0;
- AclInfo.AclBytesInUse = sizeof(ACL);
-
- if (pACL == NULL)
- fDaclPresent = FALSE;
-
- /* If not NULL DACL, gather size information from DACL. */
- if (fDaclPresent)
- {
- if (!GNGetAclInformation(pACL, &AclInfo,
- sizeof(ACL_SIZE_INFORMATION), AclSizeInformation))
- {
- goto end;
- }
- }
-
- /**
- * STEP 6: Compute size needed for the new ACL.
- */
- cbNewACL = AclInfo.AclBytesInUse + sizeof(ACCESS_ALLOWED_ACE)
- + GetLengthSid(pUserSID) - sizeof(DWORD);
-
- /**
- * STEP 7: Allocate memory for new ACL.
- */
- pNewACL = (PACL)HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, cbNewACL);
- if (!pNewACL)
- {
- goto end;
- }
-
- /**
- * STEP 8: Initialize the new ACL.
- */
- if (!GNInitializeAcl(pNewACL, cbNewACL, ACL_REVISION2))
- {
- goto end;
- }
-
- /**
- * STEP 9 If DACL is present, copy all the ACEs from the old DACL
- * to the new DACL.
- *
- * The following code assumes that the old DACL is
- * already in Windows 2000 preferred order. To conform
- * to the new Windows 2000 preferred order, first we will
- * copy all non-inherited ACEs from the old DACL to the
- * new DACL, irrespective of the ACE type.
- */
-
- newAceIndex = 0;
-
- if (fDaclPresent && AclInfo.AceCount)
- {
- for (CurrentAceIndex = 0;
- CurrentAceIndex < AclInfo.AceCount;
- CurrentAceIndex++)
- {
- /**
- * TEP 10: Get an ACE.
- */
- if (!GNGetAce(pACL, CurrentAceIndex, &pTempAce))
- {
- goto end;
- }
-
- /**
- * STEP 11: Check if it is a non-inherited ACE.
- * If it is an inherited ACE, break from the loop so
- * that the new access allowed non-inherited ACE can
- * be added in the correct position, immediately after
- * all non-inherited ACEs.
- */
- if (((ACCESS_ALLOWED_ACE *)pTempAce)->Header.AceFlags
- & INHERITED_ACE)
- break;
-
- /**
- * STEP 12: Skip adding the ACE, if the SID matches
- * with the account specified, as we are going to
- * add an access allowed ACE with a different access
- * mask.
- */
- if (GNEqualSid(pUserSID,
- &(((ACCESS_ALLOWED_ACE *)pTempAce)->SidStart)))
- continue;
-
- /**
- * STEP 13: Add the ACE to the new ACL.
- */
- if (!GNAddAce(pNewACL, ACL_REVISION, MAXDWORD, pTempAce,
- ((PACE_HEADER)pTempAce)->AceSize))
- {
- goto end;
- }
-
- newAceIndex++;
- }
- }
-
- /**
- * STEP 14: Add the access-allowed ACE to the new DACL.
- * The new ACE added here will be in the correct position,
- * immediately after all existing non-inherited ACEs.
- */
- if (!GNAddAccessAllowedAce(pNewACL, ACL_REVISION2, dwAccessMask,
- pUserSID))
- {
- goto end;
- }
-
- /**
- * STEP 14.5: Make new ACE inheritable
- */
- if (!GetAce(pNewACL, newAceIndex, &pTempAce))
- goto end;
- ((ACCESS_ALLOWED_ACE *)pTempAce)->Header.AceFlags |=
- (CONTAINER_INHERIT_ACE | OBJECT_INHERIT_ACE);
-
- /**
- * STEP 15: To conform to the new Windows 2000 preferred order,
- * we will now copy the rest of inherited ACEs from the
- * old DACL to the new DACL.
- */
- if (fDaclPresent && AclInfo.AceCount)
- {
- for (;
- CurrentAceIndex < AclInfo.AceCount;
- CurrentAceIndex++)
- {
- /**
- * STEP 16: Get an ACE.
- */
- if (!GNGetAce(pACL, CurrentAceIndex, &pTempAce))
- {
- goto end;
- }
-
- /**
- * STEP 17: Add the ACE to the new ACL.
- */
- if (!GNAddAce(pNewACL, ACL_REVISION, MAXDWORD, pTempAce,
- ((PACE_HEADER)pTempAce)->AceSize))
- {
- goto end;
- }
- }
- }
-
- /**
- * STEP 18: Set permissions
- */
- if (GNSetNamedSecurityInfo((LPTSTR)lpszFileName, SE_FILE_OBJECT,
- DACL_SECURITY_INFORMATION, NULL, NULL, pNewACL, NULL) != ERROR_SUCCESS)
- {
- goto end;
- }
-
- fResult = TRUE;
-
-end:
-
- /**
- * STEP 19: Free allocated memory
- */
- if (pUserSID)
- HeapFree(GetProcessHeap(), 0, pUserSID);
-
- if (szDomain)
- HeapFree(GetProcessHeap(), 0, szDomain);
-
- if (pFileSD)
- HeapFree(GetProcessHeap(), 0, pFileSD);
-
- if (pNewACL)
- HeapFree(GetProcessHeap(), 0, pNewACL);
-
- return fResult;
-}
-
-char *winErrorStr(const char *prefix, int dwErr)
-{
- char *err, *ret;
- int mem;
-
- if (!FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
- NULL, (DWORD)dwErr, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&err,
- 0, NULL))
- {
- err = (char *)LocalAlloc(LMEM_FIXED | LMEM_ZEROINIT, 1);
- }
-
- mem = strlen(err) + strlen(prefix) + 20;
- ret = (char *)malloc(mem);
-
- snprintf(ret, mem, "%s: %s (#%u)", prefix, err, dwErr);
-
- LocalFree(err);
-
- return ret;
-}
-
-/**
- * Terminate a process by creating a remote thread within it,
- * which proceeds to call ExitProcess() inside that process.
- * Safer than TerminateProcess ().
- *
- * Code is from From http://private-storm.de/2009/08/11/case-terminateprocess/
- *
- * @param hProcess handle of a process to terminate
- * @param uExitCode exit code to use for ExitProcess()
- * @param dwTimeout number of ms to wait for the process to terminate
- * @return TRUE on success, FALSE on failure (check last error for the code)
- */
-BOOL
-SafeTerminateProcess(HANDLE hProcess, UINT uExitCode, DWORD dwTimeout)
-{
- DWORD dwTID, dwCode, dwErr = 0;
- HANDLE hProcessDup = INVALID_HANDLE_VALUE;
- HANDLE hRT = NULL;
- HINSTANCE hKernel = GetModuleHandle("Kernel32");
- BOOL bSuccess = FALSE;
-
- BOOL bDup = DuplicateHandle(GetCurrentProcess(), hProcess,
- GetCurrentProcess(), &hProcessDup, PROCESS_ALL_ACCESS,
- FALSE, 0);
-
- /* Detect the special case where the process is
- * already dead...
- */
- if (GetExitCodeProcess(bDup ? hProcessDup : hProcess, &dwCode) &&
- (STILL_ACTIVE == dwCode))
- {
- FARPROC pfnExitProc;
-
- pfnExitProc = GetProcAddress(hKernel, "ExitProcess");
-
- hRT = CreateRemoteThread((bDup) ? hProcessDup : hProcess, NULL, 0,
- (LPTHREAD_START_ROUTINE)pfnExitProc, (PVOID)uExitCode, 0, &dwTID);
-
- dwErr = GetLastError();
- }
- else
- {
- dwErr = ERROR_PROCESS_ABORTED;
- }
-
- if (hRT)
- {
- /* Must wait process to terminate to
- * guarantee that it has exited...
- */
- DWORD dwWaitResult = WaitForSingleObject((bDup) ? hProcessDup : hProcess,
- dwTimeout);
- if (dwWaitResult == WAIT_TIMEOUT)
- dwErr = WAIT_TIMEOUT;
- else
- dwErr = GetLastError();
-
- CloseHandle(hRT);
- bSuccess = dwErr == NO_ERROR;
- }
-
- if (bDup)
- CloseHandle(hProcessDup);
-
- SetLastError(dwErr);
-
- return bSuccess;
-}
-
-#endif
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 GNUnet e.V.
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-
-/**
- * @file util/winproc.c
- * @brief Functions for MS Windows
- * @author Nils Durner
- */
-
-#include "platform.h"
-#include "gnunet_crypto_lib.h"
-#include "gnunet_common.h"
-
-
-#ifdef MINGW
-
-static HINSTANCE hNTDLL, hIphlpapi, hAdvapi, hNetapi;
-#ifdef W32_VEH
-static void *GNWinVEH_handle = NULL;
-#endif
-
-TNtQuerySystemInformation GNNtQuerySystemInformation;
-TGetIfEntry GNGetIfEntry;
-TGetIpAddrTable GNGetIpAddrTable;
-TGetIfTable GNGetIfTable;
-TOpenSCManager GNOpenSCManager;
-TCreateService GNCreateService;
-TCloseServiceHandle GNCloseServiceHandle;
-TDeleteService GNDeleteService;
-TRegisterServiceCtrlHandler GNRegisterServiceCtrlHandler;
-TSetServiceStatus GNSetServiceStatus;
-TStartServiceCtrlDispatcher GNStartServiceCtrlDispatcher;
-TControlService GNControlService;
-TOpenService GNOpenService;
-TGetBestInterfaceEx GNGetBestInterfaceEx;
-TGetAdaptersInfo GNGetAdaptersInfo;
-TNetUserAdd GNNetUserAdd;
-TNetUserSetInfo GNNetUserSetInfo;
-TLsaOpenPolicy GNLsaOpenPolicy;
-TLsaAddAccountRights GNLsaAddAccountRights;
-TLsaRemoveAccountRights GNLsaRemoveAccountRights;
-TLsaClose GNLsaClose;
-TLookupAccountName GNLookupAccountName;
-TGetFileSecurity GNGetFileSecurity;
-TInitializeSecurityDescriptor GNInitializeSecurityDescriptor;
-TGetSecurityDescriptorDacl GNGetSecurityDescriptorDacl;
-TGetAclInformation GNGetAclInformation;
-TInitializeAcl GNInitializeAcl;
-TGetAce GNGetAce;
-TEqualSid GNEqualSid;
-TAddAce GNAddAce;
-TAddAccessAllowedAce GNAddAccessAllowedAce;
-TSetNamedSecurityInfo GNSetNamedSecurityInfo;
-
-#define LOG(kind, ...) GNUNET_log_from(kind, "util-winproc", __VA_ARGS__)
-/**
- * Log (panic) messages from PlibC
- */
-void
-plibc_panic(int err, char *msg)
-{
- LOG(((err == INT_MAX) ? GNUNET_ERROR_TYPE_DEBUG : GNUNET_ERROR_TYPE_ERROR),
- "%s", msg);
-}
-
-#ifdef W32_VEH
-/**
- * Handles exceptions (useful for debugging).
- * Issues a DebugBreak() call if the process is being debugged (not really
- * useful - if the process is being debugged, this handler won't be invoked
- * anyway). If it is not, runs a debugger from GNUNET_DEBUGGER env var,
- * substituting first %u in it for PID, and the second one for the event,
- * that should be set once the debugger attaches itself (otherwise the
- * only way out of WaitForSingleObject() is to time out after 1 minute).
- */
-LONG __stdcall
-GNWinVEH(PEXCEPTION_POINTERS ExceptionInfo)
-{
- char debugger[MAX_PATH + 1];
- char *debugger_env = NULL;
-
- if (IsDebuggerPresent())
- {
- DebugBreak();
- return EXCEPTION_CONTINUE_EXECUTION;
- }
- debugger_env = getenv("GNUNET_DEBUGGER");
- if (debugger_env != NULL)
- {
- STARTUPINFO si;
- PROCESS_INFORMATION pi;
- HANDLE event;
- SECURITY_ATTRIBUTES sa;
- memset(&si, 0, sizeof(si));
- si.cb = sizeof(si);
- memset(&pi, 0, sizeof(pi));
- memset(&sa, 0, sizeof(sa));
- sa.nLength = sizeof(sa);
- sa.bInheritHandle = TRUE;
- event = CreateEvent(&sa, FALSE, FALSE, NULL);
- snprintf(debugger, MAX_PATH + 1, debugger_env, GetCurrentProcessId(), (uintptr_t)event);
- debugger[MAX_PATH] = '\0';
- if (0 != CreateProcessA(NULL, debugger, NULL, NULL, TRUE, CREATE_NEW_CONSOLE, NULL, NULL, &si, &pi))
- {
- CloseHandle(pi.hProcess);
- CloseHandle(pi.hThread);
- WaitForSingleObject(event, 60000);
- CloseHandle(event);
- if (IsDebuggerPresent())
- {
- return EXCEPTION_CONTINUE_EXECUTION;
- }
- }
- else
- CloseHandle(event);
- }
- return EXCEPTION_CONTINUE_SEARCH;
-}
-#endif
-
-/**
- * @brief Initialize PlibC and set up Windows environment
- * @param logging context, NULL means stderr
- * @return Error code from winerror.h, ERROR_SUCCESS on success
- */
-int
-GNInitWinEnv()
-{
- int ret;
-
- plibc_initialized();
- plibc_set_panic_proc(plibc_panic);
- ret = plibc_init_utf8("GNU", PACKAGE, 1);
- plibc_set_stat_size_size(sizeof(((struct stat *)0)->st_size));
- plibc_set_stat_time_size(sizeof(((struct stat *)0)->st_mtime));
- /* don't load other DLLs twice */
- if (hNTDLL)
- return ret;
-
-#ifdef W32_VEH
- if (GNWinVEH_handle == NULL)
- {
- GNWinVEH_handle = AddVectoredExceptionHandler(1, &GNWinVEH);
- if (GNWinVEH_handle == NULL)
- {
- /* This is bad, but what can we do? */
- printf("Failed to set up an exception handler!\n");
- }
- }
-#endif
-
- hNTDLL = LoadLibrary("ntdll.dll");
-
- /* Function to get CPU usage under Win NT */
- if (hNTDLL)
- {
- GNNtQuerySystemInformation =
- (TNtQuerySystemInformation)GetProcAddress(hNTDLL,
- "NtQuerySystemInformation");
- }
- else
- {
- GNNtQuerySystemInformation = NULL;
- }
-
- /* Functions to get information about a network adapter */
- hIphlpapi = LoadLibrary("iphlpapi.dll");
- if (hIphlpapi)
- {
- GNGetIfEntry = (TGetIfEntry)GetProcAddress(hIphlpapi, "GetIfEntry");
- GNGetIpAddrTable =
- (TGetIpAddrTable)GetProcAddress(hIphlpapi, "GetIpAddrTable");
- GNGetIfTable = (TGetIfTable)GetProcAddress(hIphlpapi, "GetIfTable");
- GNGetBestInterfaceEx =
- (TGetBestInterfaceEx)GetProcAddress(hIphlpapi, "GetBestInterfaceEx");
- GNGetAdaptersInfo =
- (TGetAdaptersInfo)GetProcAddress(hIphlpapi, "GetAdaptersInfo");
- }
- else
- {
- GNGetIfEntry = NULL;
- GNGetIpAddrTable = NULL;
- GNGetIfTable = NULL;
- GNGetBestInterfaceEx = NULL;
- GNGetAdaptersInfo = NULL;
- }
-
- /* Service & Account functions */
- hAdvapi = LoadLibrary("advapi32.dll");
- if (hAdvapi)
- {
- GNOpenSCManager =
- (TOpenSCManager)GetProcAddress(hAdvapi, "OpenSCManagerA");
- GNCreateService =
- (TCreateService)GetProcAddress(hAdvapi, "CreateServiceA");
- GNCloseServiceHandle =
- (TCloseServiceHandle)GetProcAddress(hAdvapi, "CloseServiceHandle");
- GNDeleteService =
- (TDeleteService)GetProcAddress(hAdvapi, "DeleteService");
- GNRegisterServiceCtrlHandler =
- (TRegisterServiceCtrlHandler)GetProcAddress(hAdvapi,
- "RegisterServiceCtrlHandlerA");
- GNSetServiceStatus =
- (TSetServiceStatus)GetProcAddress(hAdvapi, "SetServiceStatus");
- GNStartServiceCtrlDispatcher =
- (TStartServiceCtrlDispatcher)GetProcAddress(hAdvapi,
- "StartServiceCtrlDispatcherA");
- GNControlService =
- (TControlService)GetProcAddress(hAdvapi, "ControlService");
- GNOpenService = (TOpenService)GetProcAddress(hAdvapi, "OpenServiceA");
-
- GNLsaOpenPolicy =
- (TLsaOpenPolicy)GetProcAddress(hAdvapi, "LsaOpenPolicy");
- GNLsaAddAccountRights =
- (TLsaAddAccountRights)GetProcAddress(hAdvapi, "LsaAddAccountRights");
- GNLsaRemoveAccountRights =
- (TLsaRemoveAccountRights)GetProcAddress(hAdvapi,
- "LsaRemoveAccountRights");
- GNLsaClose = (TLsaClose)GetProcAddress(hAdvapi, "LsaClose");
- GNLookupAccountName =
- (TLookupAccountName)GetProcAddress(hAdvapi, "LookupAccountNameA");
-
- GNGetFileSecurity =
- (TGetFileSecurity)GetProcAddress(hAdvapi, "GetFileSecurityA");
- GNInitializeSecurityDescriptor =
- (TInitializeSecurityDescriptor)GetProcAddress(hAdvapi,
- "InitializeSecurityDescriptor");
- GNGetSecurityDescriptorDacl =
- (TGetSecurityDescriptorDacl)GetProcAddress(hAdvapi,
- "GetSecurityDescriptorDacl");
- GNGetAclInformation =
- (TGetAclInformation)GetProcAddress(hAdvapi, "GetAclInformation");
- GNInitializeAcl =
- (TInitializeAcl)GetProcAddress(hAdvapi, "InitializeAcl");
- GNGetAce = (TGetAce)GetProcAddress(hAdvapi, "GetAce");
- GNEqualSid = (TEqualSid)GetProcAddress(hAdvapi, "EqualSid");
- GNAddAce = (TAddAce)GetProcAddress(hAdvapi, "AddAce");
- GNAddAccessAllowedAce =
- (TAddAccessAllowedAce)GetProcAddress(hAdvapi, "AddAccessAllowedAce");
- GNSetNamedSecurityInfo =
- (TSetNamedSecurityInfo)GetProcAddress(hAdvapi,
- "SetNamedSecurityInfoA");
- }
- else
- {
- GNOpenSCManager = NULL;
- GNCreateService = NULL;
- GNCloseServiceHandle = NULL;
- GNDeleteService = NULL;
- GNRegisterServiceCtrlHandler = NULL;
- GNSetServiceStatus = NULL;
- GNStartServiceCtrlDispatcher = NULL;
- GNControlService = NULL;
- GNOpenService = NULL;
-
- GNLsaOpenPolicy = NULL;
- GNLsaAddAccountRights = NULL;
- GNLsaRemoveAccountRights = NULL;
- GNLsaClose = NULL;
- GNLookupAccountName = NULL;
-
- GNGetFileSecurity = NULL;
- GNInitializeSecurityDescriptor = NULL;
- GNGetSecurityDescriptorDacl = NULL;
- GNGetAclInformation = NULL;
- GNInitializeAcl = NULL;
- GNGetAce = NULL;
- GNEqualSid = NULL;
- GNAddAce = NULL;
- GNAddAccessAllowedAce = NULL;
- GNSetNamedSecurityInfo = NULL;
- }
-
- /* Account function */
- hNetapi = LoadLibrary("netapi32.dll");
- if (hNetapi)
- {
- GNNetUserAdd = (TNetUserAdd)GetProcAddress(hNetapi, "NetUserAdd");
- GNNetUserSetInfo =
- (TNetUserSetInfo)GetProcAddress(hNetapi, "NetUserSetInfo");
- }
- else
- {
- GNNetUserAdd = NULL;
- GNNetUserSetInfo = NULL;
- }
-
- return ret;
-}
-
-/**
- * Clean up Windows environment
- */
-void
-GNShutdownWinEnv()
-{
- plibc_shutdown();
-
-#ifdef W32_VEH
- if (GNWinVEH_handle != NULL)
- {
- RemoveVectoredExceptionHandler(GNWinVEH_handle);
- GNWinVEH_handle = NULL;
- }
-#endif
-
- FreeLibrary(hNTDLL);
- FreeLibrary(hIphlpapi);
- FreeLibrary(hAdvapi);
- FreeLibrary(hNetapi);
-
- CoUninitialize();
-}
-
-#endif /* MINGW */
-
-#if !HAVE_ATOLL
-long long
-atoll(const char *nptr)
-{
- return atol(nptr);
-}
-#endif
# This Makefile.am is in the public domain
AM_CPPFLAGS = -I$(top_srcdir)/src/include -I$(top_builddir)/src/include
-if MINGW
- WINFLAGS = -Wl,--no-undefined,--export-all-symbols
- VPNBIN = gnunet-helper-vpn
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
endif
bin_PROGRAMS = \
gnunet-vpn
-if MINGW
- gnunet_helper_vpn_LDFLAGS = \
- -no-undefined -Wl,--export-all-symbols
-
- gnunet_helper_vpn_LDADD = \
- -lsetupapi -lnewdev -lshell32 -liconv -lstdc++ \
- -lcomdlg32 -lgdi32 -liphlpapi
+gnunet_helper_vpn_SOURCES = \
+gnunet-helper-vpn.c
- gnunet_helper_vpn_SOURCES = \
- gnunet-helper-vpn-windows.c
-else
- gnunet_helper_vpn_SOURCES = \
- gnunet-helper-vpn.c
-endif
gnunet_service_vpn_SOURCES = \
gnunet-service-vpn.c
gnunet_service_vpn_LDADD = \
+++ /dev/null
-/*
- This file is part of GNUnet.
- Copyright (C) 2010, 2012 Christian Grothoff
-
- GNUnet is free software: you can redistribute it and/or modify it
- under the terms of the GNU Affero General Public License as published
- by the Free Software Foundation, either version 3 of the License,
- or (at your option) any later version.
-
- GNUnet 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
- Affero General Public License for more details.
-
- You should have received a copy of the GNU Affero General Public License
- along with this program. If not, see <http://www.gnu.org/licenses/>.
-
- SPDX-License-Identifier: AGPL3.0-or-later
- */
-/**
- * @file vpn/gnunet-helper-vpn-windows.c
- * @brief the helper for the VPN service in win32 builds.
- * Opens a virtual network-interface, sends data received on the if to stdout,
- * sends data received on stdin to the interface
- * @author Christian M. Fuchs
- *
- * The following list of people have reviewed this code and considered
- * it safe since the last modification (if you reviewed it, please
- * have your name added to the list):
- *
- */
-
-#include <stdio.h>
-#include <Winsock2.h>
-#include <windows.h>
-#include <setupapi.h>
-#ifndef __MINGW64_VERSION_MAJOR
-#include <ddk/cfgmgr32.h>
-#include <ddk/newdev.h>
-#else
-#include <cfgmgr32.h>
-#include <newdev.h>
-#endif
-#include <time.h>
-#include "platform.h"
-#include "tap-windows.h"
-/**
- * Need 'struct GNUNET_HashCode' and 'struct GNUNET_PeerIdentity'.
- */
-#include "gnunet_crypto_lib.h"
-/**
- * Need 'struct GNUNET_MessageHeader'.
- */
-#include "gnunet_common.h"
-
-/**
- * Need VPN message types.
- */
-#include "gnunet_protocols.h"
-
-/**
- * Should we print (interesting|debug) messages that can happen during
- * normal operation?
- */
-#define DEBUG GNUNET_NO
-
-#if DEBUG
-/* FIXME: define with varargs... */
-#define LOG_DEBUG(msg) fprintf(stderr, "%s", msg);
-#else
-#define LOG_DEBUG(msg) do {} while (0)
-#endif
-
-/**
- * Will this binary be run in permissions testing mode?
- */
-static boolean privilege_testing = FALSE;
-
-/**
- * Maximum size of a GNUnet message (GNUNET_MAX_MESSAGE_SIZE)
- */
-#define MAX_SIZE 65536
-
-/**
- * Name or Path+Name of our win32 driver.
- * The .sys and .cat files HAVE to be in the same location as this file!
- */
-#define INF_FILE "share/gnunet/openvpn-tap32/tapw32/OemWin2k.inf"
-
-/**
- * Name or Path+Name of our win64 driver.
- * The .sys and .cat files HAVE to be in the same location as this file!
- */
-#define INF_FILE64 "share/gnunet/openvpn-tap32/tapw64/OemWin2k.inf"
-
-/**
- * Hardware ID used in the inf-file.
- * This might change over time, as openvpn advances their driver
- */
-#define HARDWARE_ID "tap0901"
-
-/**
- * Minimum major-id of the driver version we can work with
- */
-#define TAP_WIN_MIN_MAJOR 9
-
-/**
- * Minimum minor-id of the driver version we can work with.
- * v <= 7 has buggy IPv6.
- * v == 8 is broken for small IPv4 Packets
- */
-#define TAP_WIN_MIN_MINOR 9
-
-/**
- * Time in seconds to wait for our virtual device to go up after telling it to do so.
- *
- * openvpn doesn't specify a value, 4 seems sane for testing, even for openwrt
- * (in fact, 4 was chosen by a fair dice roll...)
- */
-#define TAP32_POSTUP_WAITTIME 4
-
-/**
- * Location of the network interface list resides in registry.
- */
-#define INTERFACE_REGISTRY_LOCATION "SYSTEM\\CurrentControlSet\\Control\\Network\\{4D36E972-E325-11CE-BFC1-08002BE10318}"
-
-/**
- * Our local process' PID. Used for creating a sufficiently unique additional
- * hardware ID for our device.
- */
-static char secondary_hwid[LINE_LEN / 2];
-
-/**
- * Device's visible Name, used to identify a network device in netsh.
- * eg: "Local Area Connection 9"
- */
-static char device_visible_name[256];
-
-/**
- * This is our own local instance of a virtual network interface
- * It is (somewhat) equivalent to using tun/tap in unixoid systems
- *
- * Upon initialization, we create such an device node.
- * Upon termination, we remove it again.
- *
- * If we crash this device might stay around.
- */
-static HDEVINFO DeviceInfo = INVALID_HANDLE_VALUE;
-
-/**
- * Registry Key we hand over to windows to spawn a new virtual interface
- */
-static SP_DEVINFO_DATA DeviceNode;
-
-/**
- * GUID of our virtual device in the form of
- * {12345678-1234-1234-1234-123456789abc} - in hex
- */
-static char device_guid[256];
-
-
-/**
- * Possible states of an IO facility.
- */
-enum IO_State {
- /**
- * overlapped I/O is ready for work
- */
- IOSTATE_READY = 0,
-
- /**
- * overlapped I/O has been queued
- */
- IOSTATE_QUEUED,
-
- /**
- * overlapped I/O has finished, but is waiting for it's write-partner
- */
- IOSTATE_WAITING,
-
- /**
- * there is a full buffer waiting
- */
- IOSTATE_RESUME,
-
- /**
- * Operlapped IO states for facility objects
- * overlapped I/O has failed, stop processing
- */
- IOSTATE_FAILED
-};
-
-
-/**
- * A IO Object + read/writebuffer + buffer-size for windows asynchronous IO handling
- */
-struct io_facility {
- /**
- * The mode the state machine associated with this object is in.
- */
- enum IO_State facility_state;
-
- /**
- * If the path is open or blocked in general (used for quickly checking)
- */
- BOOL path_open; // BOOL is winbool (int), NOT boolean (unsigned char)!
-
- /**
- * Windows Object-Handle (used for accessing TAP and STDIN/STDOUT)
- */
- HANDLE handle;
-
- /**
- * Overlaped IO structure used for asynchronous IO in windows.
- */
- OVERLAPPED overlapped;
-
- /**
- * Buffer for reading things to and writing from...
- */
- unsigned char buffer[MAX_SIZE];
-
- /**
- * How much of this buffer was used when reading or how much data can be written
- */
- DWORD buffer_size;
-
- /**
- * Amount of data actually written or read by readfile/writefile.
- */
- DWORD buffer_size_processed;
-
- /**
- * How much of this buffer we have writte in total
- */
- DWORD buffer_size_written;
-};
-
-/**
- * ReOpenFile is only available as of XP SP2 and 2003 SP1
- */
-WINBASEAPI HANDLE WINAPI ReOpenFile(HANDLE, DWORD, DWORD, DWORD);
-
-/**
- * IsWow64Process definition for our is_win64, as this is a kernel function
- */
-typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS)(HANDLE, PBOOL);
-
-
-/**
- * Like strlcpy but portable. The given string @a src is copied until its null
- * byte or until @a n - 1 bytes have been read. The destination buffer is
- * guaranteed to be null-terminated.
- *
- * @param dst destination of the copy (must be @a n bytes long)
- * @param src source of the copy (at most @a n - 1 bytes will be read)
- * @param n the length of the string to copy, including its terminating null
- * byte
- * @return the length of the string that was copied, excluding the terminating
- * null byte
- */
-size_t
-GNUNET_strlcpy(char *dst, const char *src, size_t n)
-{
- size_t ret;
- size_t slen;
-
- GNUNET_assert(0 != n);
- slen = strnlen(src, n - 1);
- memcpy(dst, src, slen);
- dst[slen] = '\0';
- return slen;
-}
-
-
-/**
- * Determines if the host OS is win32 or win64
- *
- * @return true if
- */
-BOOL
-is_win64()
-{
-#if defined(_WIN64)
- //this is a win64 binary,
- return TRUE;
-#elif defined(_WIN32)
- //this is a 32bit binary, and we need to check if we are running in WOW64
- BOOL success = FALSE;
- BOOL on_wow64 = FALSE;
- LPFN_ISWOW64PROCESS IsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandle("kernel32"), "IsWow64Process");
-
- if (NULL != IsWow64Process)
- success = IsWow64Process(GetCurrentProcess(), &on_wow64);
-
- return success && on_wow64;
-#endif
-}
-/**
- * Wrapper for executing a shellcommand in windows.
- *
- * @param command - the command + parameters to execute
- * @return * exitcode of the program executed,
- * * EINVAL (cmd/file not found)
- * * EPIPE (could not read STDOUT)
- */
-static int
-execute_shellcommand(const char *command)
-{
- FILE *pipe;
-
- if ((NULL == command) ||
- (NULL == (pipe = _popen(command, "rt"))))
- return EINVAL;
-
-#if DEBUG
- fprintf(stderr, "DEBUG: Command output: \n");
- char output[LINE_LEN];
- while (NULL != fgets(output, sizeof(output), pipe))
- fprintf(stderr, "%s", output);
-#endif
-
- return _pclose(pipe);
-}
-
-
-/**
- * @brief Sets the IPv6-Address given in address on the interface dev
- *
- * @param address the IPv6-Address
- * @param prefix_len the length of the network-prefix
- */
-static int
-set_address6(const char *address, unsigned long prefix_len)
-{
- int ret = EINVAL;
- char command[LINE_LEN];
- struct sockaddr_in6 sa6;
-
- /*
- * parse the new address
- */
- memset(&sa6, 0, sizeof(struct sockaddr_in6));
- sa6.sin6_family = AF_INET6;
- if (1 != inet_pton(AF_INET6, address, &sa6.sin6_addr.s6_addr))
- {
- fprintf(stderr, "ERROR: Failed to parse address `%s': %s\n", address,
- strerror(errno));
- return -1;
- }
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 add address \"%s\" %s/%d store=active",
- device_visible_name, address, prefix_len);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: Setting IPv6 address failed: %s\n", strerror(ret));
- return ret;
-}
-
-
-/**
- * @brief Removes the IPv6-Address given in address from the interface dev
- *
- * @param address the IPv4-Address
- */
-static void
-remove_address6(const char *address)
-{
- char command[LINE_LEN];
- int ret = EINVAL;
-
- // sanity checking was already done in set_address6
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv6 delete address \"%s\" store=persistent",
- device_visible_name);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr,
- "FATAL: removing IPv6 address failed: %s\n",
- strerror(ret));
-}
-
-
-/**
- * @brief Sets the IPv4-Address given in address on the interface dev
- *
- * @param address the IPv4-Address
- * @param mask the netmask
- */
-static int
-set_address4(const char *address, const char *mask)
-{
- int ret = EINVAL;
- char command[LINE_LEN];
-
- struct sockaddr_in addr;
-
- addr.sin_family = AF_INET;
-
- /*
- * Parse the address
- */
- if (1 != inet_pton(AF_INET, address, &addr.sin_addr.s_addr))
- {
- fprintf(stderr, "ERROR: Failed to parse address `%s': %s\n", address,
- strerror(errno));
- return -1;
- }
- // Set Device to Subnet-Mode? do we really need openvpn/tun.c:2925 ?
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv4 add address \"%s\" %s %s store=active",
- device_visible_name, address, mask);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr,
- "FATAL: Setting IPv4 address failed: %s\n",
- strerror(ret));
- return ret;
-}
-
-
-/**
- * @brief Removes the IPv4-Address given in address from the interface dev
- *
- * @param address the IPv4-Address
- */
-static void
-remove_address4(const char *address)
-{
- char command[LINE_LEN];
- int ret = EINVAL;
-
- // sanity checking was already done in set_address4
-
- /*
- * prepare the command
- */
- snprintf(command, LINE_LEN,
- "netsh interface ipv4 delete address \"%s\" gateway=all store=persistent",
- device_visible_name);
- /*
- * Set the address
- */
- ret = execute_shellcommand(command);
-
- /* Did it work?*/
- if (0 != ret)
- fprintf(stderr, "FATAL: removing IPv4 address failed: %s\n", strerror(ret));
-}
-
-
-/**
- * Setup a new virtual interface to use for tunneling.
- *
- * @return: TRUE if setup was successful, else FALSE
- */
-static BOOL
-setup_interface()
-{
- /*
- * where to find our inf-file. (+ the "full" path, after windows found")
- *
- * We do not directly input all the props here, because openvpn will update
- * these details over time.
- */
- char inf_file_path[MAX_PATH];
- char * temp_inf_filename;
- char hwidlist[LINE_LEN + 4];
- char class_name[128];
- GUID class_guid;
- int str_length = 0;
-
- /**
- * Set the device's hardware ID and add it to a list.
- * This information will later on identify this device in registry.
- */
- str_len = GNUNET_strlcpy(hwidlist,
- HARDWARE_ID,
- sizeof(hwidList)) + 1;
- /**
- * this is kind of over-complicated, but allows keeps things independent of
- * how the openvpn-hwid is actually stored.
- *
- * A HWID list is double-\0 terminated and \0 separated
- */
- str_len += GNUNET_strlcpy(&hwidlist[str_length],
- secondary_hwid,
- sizeof(hwidlist) - str_len) + 1;
- GNUNET_assert(str_len < sizeof(hwidlist));
- hwidlist[str_len] = '\0';
- ++str_len;
-
- /**
- * Locate the inf-file, we need to store it somewhere where the system can
- * find it. We need to pick the correct driver for win32/win64.
- */
- if (is_win64())
- GetFullPathNameA(INF_FILE64, MAX_PATH, inf_file_path, &temp_inf_filename);
- else
- GetFullPathNameA(INF_FILE, MAX_PATH, inf_file_path, &temp_inf_filename);
-
- fprintf(stderr, "INFO: Located our driver's .inf file at %s\n", inf_file_path);
- /**
- * Bootstrap our device info using the drivers inf-file
- */
- if (!SetupDiGetINFClassA(inf_file_path,
- &class_guid,
- class_name, sizeof(class_name) / sizeof(char),
- NULL))
- return FALSE;
-
- /**
- * Collect all the other needed information...
- * let the system fill our this form
- */
- DeviceInfo = SetupDiCreateDeviceInfoList(&class_guid, NULL);
- if (DeviceInfo == INVALID_HANDLE_VALUE)
- return FALSE;
-
- DeviceNode.cbSize = sizeof(SP_DEVINFO_DATA);
- if (!SetupDiCreateDeviceInfoA(DeviceInfo,
- class_name,
- &class_guid,
- NULL,
- 0,
- DICD_GENERATE_ID,
- &DeviceNode))
- return FALSE;
-
- /* Deploy all the information collected into the registry */
- if (!SetupDiSetDeviceRegistryPropertyA(DeviceInfo,
- &DeviceNode,
- SPDRP_HARDWAREID,
- (LPBYTE)hwidlist,
- str_length * sizeof(char)))
- return FALSE;
-
- /* Install our new class(=device) into the system */
- if (!SetupDiCallClassInstaller(DIF_REGISTERDEVICE,
- DeviceInfo,
- &DeviceNode))
- return FALSE;
-
- /* This system call tends to take a while (several seconds!) on
- "modern" Windoze systems */
- if (!UpdateDriverForPlugAndPlayDevicesA(NULL,
- secondary_hwid,
- inf_file_path,
- INSTALLFLAG_FORCE | INSTALLFLAG_NONINTERACTIVE,
- NULL)) //reboot required? NEVER!
- return FALSE;
-
- fprintf(stderr, "DEBUG: successfully created a network device\n");
- return TRUE;
-}
-
-
-/**
- * Remove our new virtual interface to use for tunneling.
- * This function must be called AFTER setup_interface!
- *
- * @return: TRUE if destruction was successful, else FALSE
- */
-static BOOL
-remove_interface()
-{
- SP_REMOVEDEVICE_PARAMS remove;
-
- if (INVALID_HANDLE_VALUE == DeviceInfo)
- return FALSE;
-
- remove.ClassInstallHeader.cbSize = sizeof(SP_CLASSINSTALL_HEADER);
- remove.HwProfile = 0;
- remove.Scope = DI_REMOVEDEVICE_GLOBAL;
- remove.ClassInstallHeader.InstallFunction = DIF_REMOVE;
- /*
- * 1. Prepare our existing device information set, and place the
- * uninstall related information into the structure
- */
- if (!SetupDiSetClassInstallParamsA(DeviceInfo,
- (PSP_DEVINFO_DATA)&DeviceNode,
- &remove.ClassInstallHeader,
- sizeof(remove)))
- return FALSE;
- /*
- * 2. Uninstall the virtual interface using the class installer
- */
- if (!SetupDiCallClassInstaller(DIF_REMOVE,
- DeviceInfo,
- (PSP_DEVINFO_DATA)&DeviceNode))
- return FALSE;
-
- SetupDiDestroyDeviceInfoList(DeviceInfo);
-
- fprintf(stderr, "DEBUG: removed interface successfully\n");
-
- return TRUE;
-}
-
-
-/**
- * Do all the lookup necessary to retrieve the inteface's actual name
- * off the registry.
- *
- * @return: TRUE if we were able to lookup the interface's name, else FALSE
- */
-static BOOL
-resolve_interface_name()
-{
- SP_DEVINFO_LIST_DETAIL_DATA device_details;
- char pnp_instance_id [MAX_DEVICE_ID_LEN];
- HKEY adapter_key_handle;
- LONG status;
- DWORD len;
- int i = 0;
- int retrys;
- BOOL retval = FALSE;
- char adapter[] = INTERFACE_REGISTRY_LOCATION;
-
- /* We can obtain the PNP instance ID from our setupapi handle */
- device_details.cbSize = sizeof(device_details);
- if (CR_SUCCESS != CM_Get_Device_ID_ExA(DeviceNode.DevInst,
- (PCHAR)pnp_instance_id,
- MAX_DEVICE_ID_LEN,
- 0, //must be 0
- NULL)) //hMachine, we are local
- return FALSE;
-
- fprintf(stderr, "DEBUG: Resolving interface name for network device %s\n", pnp_instance_id);
-
- /* Registry is incredibly slow, retry for up to 30 seconds to allow registry to refresh */
- for (retrys = 0; retrys < 120 && !retval; retrys++)
- {
- /* sleep for 250ms*/
- Sleep(250);
-
- /* Now we can use this ID to locate the correct networks interface in registry */
- if (ERROR_SUCCESS != RegOpenKeyExA(
- HKEY_LOCAL_MACHINE,
- adapter,
- 0,
- KEY_READ,
- &adapter_key_handle))
- return FALSE;
-
- /* Of course there is a multitude of entries here, with arbitrary names,
- * thus we need to iterate through there.
- */
- while (!retval)
- {
- char instance_key[256];
- char query_key [256];
- HKEY instance_key_handle;
- char pnpinstanceid_name[] = "PnpInstanceID";
- char pnpinstanceid_value[256];
- char adaptername_name[] = "Name";
- DWORD data_type;
-
- len = 256 * sizeof(char);
- /* optain a subkey of {4D36E972-E325-11CE-BFC1-08002BE10318} */
- status = RegEnumKeyExA(
- adapter_key_handle,
- i,
- instance_key,
- &len,
- NULL,
- NULL,
- NULL,
- NULL);
-
- /* this may fail due to one of two reasons:
- * we are at the end of the list*/
- if (ERROR_NO_MORE_ITEMS == status)
- break;
- // * we found a broken registry key, continue with the next key.
- if (ERROR_SUCCESS != status)
- goto cleanup;
-
- /* prepare our new query string: */
- snprintf(query_key, 256, "%s\\%s\\Connection",
- adapter,
- instance_key);
-
- /* look inside instance_key\\Connection */
- if (ERROR_SUCCESS != RegOpenKeyExA(
- HKEY_LOCAL_MACHINE,
- query_key,
- 0,
- KEY_READ,
- &instance_key_handle))
- goto cleanup;
-
- /* now, read our PnpInstanceID */
- len = sizeof(pnpinstanceid_value);
- status = RegQueryValueExA(instance_key_handle,
- pnpinstanceid_name,
- NULL, //reserved, always NULL according to MSDN
- &data_type,
- (LPBYTE)pnpinstanceid_value,
- &len);
-
- if (status != ERROR_SUCCESS || data_type != REG_SZ)
- goto cleanup;
-
- /* compare the value we got to our devices PNPInstanceID*/
- if (0 != strncmp(pnpinstanceid_value, pnp_instance_id,
- sizeof(pnpinstanceid_value) / sizeof(char)))
- goto cleanup;
-
- len = sizeof(device_visible_name);
- status = RegQueryValueExA(
- instance_key_handle,
- adaptername_name,
- NULL, //reserved, always NULL according to MSDN
- &data_type,
- (LPBYTE)device_visible_name,
- &len);
-
- if (status != ERROR_SUCCESS || data_type != REG_SZ)
- goto cleanup;
-
- /*
- * we have successfully found OUR instance,
- * save the device GUID before exiting
- */
- GNUNET_strlcpy(device_guid, instance_key, sizeof(device_guid));
- retval = TRUE;
- fprintf(stderr, "DEBUG: Interface Name lookup succeeded on retry %d, got \"%s\" %s\n", retrys, device_visible_name, device_guid);
-
-cleanup:
- RegCloseKey(instance_key_handle);
-
- ++i;
- }
-
- RegCloseKey(adapter_key_handle);
- }
- return retval;
-}
-
-
-/**
- * Determines the version of the installed TAP32 driver and checks if it's sufficiently new for GNUNET
- *
- * @param handle the handle to our tap device
- * @return TRUE if the version is sufficient, else FALSE
- */
-static BOOL
-check_tapw32_version(HANDLE handle)
-{
- ULONG version[3];
- DWORD len;
-
- memset(&(version), 0, sizeof(version));
-
- if (DeviceIoControl(handle, TAP_WIN_IOCTL_GET_VERSION,
- &version, sizeof(version),
- &version, sizeof(version), &len, NULL))
- fprintf(stderr, "INFO: TAP-Windows Driver Version %d.%d %s\n",
- (int)version[0],
- (int)version[1],
- (version[2] ? "(DEBUG)" : ""));
-
- if ((version[0] != TAP_WIN_MIN_MAJOR) ||
- (version[1] < TAP_WIN_MIN_MINOR))
- {
- fprintf(stderr, "FATAL: This version of gnunet requires a TAP-Windows driver that is at least version %d.%d\n",
- TAP_WIN_MIN_MAJOR,
- TAP_WIN_MIN_MINOR);
- return FALSE;
- }
-
- return TRUE;
-}
-
-
-/**
- * Creates a tun-interface called dev;
- *
- * @return the fd to the tun or -1 on error
- */
-static HANDLE
-init_tun()
-{
- char device_path[256];
- HANDLE handle;
-
- if (!setup_interface())
- {
- errno = ENODEV;
- return INVALID_HANDLE_VALUE;
- }
-
- if (!resolve_interface_name())
- {
- errno = ENODEV;
- return INVALID_HANDLE_VALUE;
- }
-
- /* Open Windows TAP-Windows adapter */
- snprintf(device_path, sizeof(device_path), "%s%s%s",
- USERMODEDEVICEDIR,
- device_guid,
- TAP_WIN_SUFFIX);
-
- handle = CreateFile(
- device_path,
- GENERIC_READ | GENERIC_WRITE,
- 0, /* was: FILE_SHARE_READ */
- 0,
- OPEN_EXISTING,
- FILE_ATTRIBUTE_SYSTEM | FILE_FLAG_OVERLAPPED,
- 0
- );
-
- if (INVALID_HANDLE_VALUE == handle)
- {
- fprintf(stderr, "FATAL: CreateFile failed on TAP device: %s\n", device_path);
- return handle;
- }
-
- /* get driver version info */
- if (!check_tapw32_version(handle))
- {
- CloseHandle(handle);
- return INVALID_HANDLE_VALUE;
- }
-
- /* TODO (opt?): get MTU-Size */
-
- fprintf(stderr, "DEBUG: successfully opened TAP device\n");
- return handle;
-}
-
-
-/**
- * Brings a TAP device up and sets it to connected state.
- *
- * @param handle the handle to our TAP device
- * @return True if the operation succeeded, else false
- */
-static BOOL
-tun_up(HANDLE handle)
-{
- ULONG status = TRUE;
- DWORD len;
-
- if (!DeviceIoControl(handle, TAP_WIN_IOCTL_SET_MEDIA_STATUS,
- &status, sizeof(status),
- &status, sizeof(status), &len, NULL))
- {
- fprintf(stderr, "FATAL: TAP driver ignored request to UP interface (DeviceIoControl call)\n");
- return FALSE;
- }
-
- /* Wait for the device to go UP, might take some time. */
- Sleep(TAP32_POSTUP_WAITTIME * 1000);
- fprintf(stderr, "DEBUG: successfully set TAP device to UP\n");
-
- return TRUE;
-}
-
-
-/**
- * Attempts to read off an input facility (tap or named pipe) in overlapped mode.
- *
- * 1.
- * If the input facility is in IOSTATE_READY, it will issue a new read operation to the
- * input handle. Then it goes into IOSTATE_QUEUED state.
- * In case the read succeeded instantly the input facility enters 3.
- *
- * 2.
- * If the input facility is in IOSTATE_QUEUED state, it will check if the queued read has finished already.
- * If it has finished, go to state 3.
- * If it has failed, set IOSTATE_FAILED
- *
- * 3.
- * If the output facility is in state IOSTATE_READY, the read-buffer is copied to the output buffer.
- * The input facility enters state IOSTATE_READY
- * The output facility enters state IOSTATE_READY
- * If the output facility is in state IOSTATE_QUEUED, the input facility enters IOSTATE_WAITING
- *
- * IOSTATE_WAITING is reset by the output facility, once it has completed.
- *
- * @param input_facility input named pipe or file to work with.
- * @param output_facility output pipe or file to hand over data to.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_read_tap(struct io_facility * input_facility,
- struct io_facility * output_facility)
-{
- struct GNUNET_MessageHeader * hdr;
- unsigned short size;
-
- switch (input_facility->facility_state)
- {
- case IOSTATE_READY:
- {
- if (!ResetEvent(input_facility->overlapped.hEvent))
- {
- return FALSE;
- }
-
- input_facility->buffer_size = 0;
-
- /* Check how the task is handled */
- if (ReadFile(input_facility->handle,
- input_facility->buffer,
- sizeof(input_facility->buffer) - sizeof(struct GNUNET_MessageHeader),
- &input_facility->buffer_size,
- &input_facility->overlapped))
- { /* async event processed immediately*/
- /* reset event manually*/
- if (!SetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: tap read succeeded immediately\n");
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && (0 < input_facility->buffer_size))
- { /* hand over this buffers content and apply message header for gnunet */
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- }
- else if (0 < input_facility->buffer_size)
- /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err)
- { /* operation queued */
- input_facility->facility_state = IOSTATE_QUEUED;
- }
- else
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
-
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- // We are queued and should check if the read has finished
- case IOSTATE_QUEUED:
- {
- // there was an operation going on already, check if that has completed now.
-
- if (GetOverlappedResult(input_facility->handle,
- &input_facility->overlapped,
- &input_facility->buffer_size,
- FALSE))
- { /* successful return for a queued operation */
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: tap read succeeded delayed\n");
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && 0 < input_facility->buffer_size)
- { /* hand over this buffers content and apply message header for gnunet */
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (0 < input_facility->buffer_size)
- { /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- // TODO: shall we attempt to fill our buffer or should we wait for our write-partner to finish?
- }
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- case IOSTATE_RESUME:
- hdr = (struct GNUNET_MessageHeader *)output_facility->buffer;
- size = input_facility->buffer_size + sizeof(struct GNUNET_MessageHeader);
-
- GNUNET_memcpy(output_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer,
- input_facility->buffer_size);
-
- output_facility->buffer_size = size;
- hdr->size = htons(size);
- hdr->type = htons(GNUNET_MESSAGE_TYPE_VPN_HELPER);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Attempts to read off an input facility (tap or named pipe) in overlapped mode.
- *
- * 1.
- * If the input facility is in IOSTATE_READY, it will issue a new read operation to the
- * input handle. Then it goes into IOSTATE_QUEUED state.
- * In case the read succeeded instantly the input facility enters 3.
- *
- * 2.
- * If the input facility is in IOSTATE_QUEUED state, it will check if the queued read has finished already.
- * If it has finished, go to state 3.
- * If it has failed, set IOSTATE_FAILED
- *
- * 3.
- * If the facility is finished with ready
- * The read-buffer is copied to the output buffer, except for the GNUNET_MessageHeader.
- * The input facility enters state IOSTATE_READY
- * The output facility enters state IOSTATE_READY
- * If the output facility is in state IOSTATE_QUEUED, the input facility enters IOSTATE_WAITING
- *
- * IOSTATE_WAITING is reset by the output facility, once it has completed.
- *
- * @param input_facility input named pipe or file to work with.
- * @param output_facility output pipe or file to hand over data to.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_read_stdin(struct io_facility * input_facility,
- struct io_facility * output_facility)
-{
- struct GNUNET_MessageHeader * hdr;
-
- switch (input_facility->facility_state)
- {
- case IOSTATE_READY:
- {
- input_facility->buffer_size = 0;
-
-partial_read_iostate_ready:
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- /* Check how the task is handled */
- if (ReadFile(input_facility->handle,
- input_facility->buffer + input_facility->buffer_size,
- sizeof(input_facility->buffer) - input_facility->buffer_size,
- &input_facility->buffer_size_processed,
- &input_facility->overlapped))
- { /* async event processed immediately*/
- hdr = (struct GNUNET_MessageHeader *)input_facility->buffer;
-
- /* reset event manually*/
- if (!SetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: stdin read succeeded immediately\n");
- input_facility->buffer_size += input_facility->buffer_size_processed;
-
- if (ntohs(hdr->type) != GNUNET_MESSAGE_TYPE_VPN_HELPER ||
- ntohs(hdr->size) > sizeof(input_facility->buffer))
- {
- fprintf(stderr, "WARNING: Protocol violation, got GNUnet Message type %h, size %h\n", ntohs(hdr->type), ntohs(hdr->size));
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
- }
- /* we got the a part of a packet */
- if (ntohs(hdr->size) > input_facility->buffer_size)
- goto partial_read_iostate_ready;
-
- /* have we read more than 0 bytes of payload? (sizeread > header)*/
- if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader) &&
- ((IOSTATE_READY == output_facility->facility_state) ||
- (IOSTATE_WAITING == output_facility->facility_state)))
- { /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- /* hand over this buffers content and strip gnunet message header */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- /* If we have have read our buffer, wait for our write-partner*/
- input_facility->facility_state = IOSTATE_WAITING;
- else /* we read nothing */
- input_facility->facility_state = IOSTATE_READY;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err) /* operation queued */
- input_facility->facility_state = IOSTATE_QUEUED;
- else
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
-
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- // We are queued and should check if the read has finished
- case IOSTATE_QUEUED:
- {
- // there was an operation going on already, check if that has completed now.
- if (GetOverlappedResult(input_facility->handle,
- &input_facility->overlapped,
- &input_facility->buffer_size_processed,
- FALSE))
- { /* successful return for a queued operation */
- hdr = (struct GNUNET_MessageHeader *)input_facility->buffer;
-
- if (!ResetEvent(input_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: stdin read succeeded delayed\n");
- input_facility->buffer_size += input_facility->buffer_size_processed;
-
- if ((ntohs(hdr->type) != GNUNET_MESSAGE_TYPE_VPN_HELPER) ||
- (ntohs(hdr->size) > sizeof(input_facility->buffer)))
- {
- fprintf(stderr, "WARNING: Protocol violation, got GNUnet Message type %h, size %h\n", ntohs(hdr->type), ntohs(hdr->size));
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
- }
- /* we got the a part of a packet */
- if (ntohs(hdr->size) > input_facility->buffer_size)
- ;
- goto partial_read_iostate_ready;
-
- /* we successfully read something from the TAP and now need to
- * send it our via STDOUT. Is that possible at the moment? */
- if ((IOSTATE_READY == output_facility->facility_state ||
- IOSTATE_WAITING == output_facility->facility_state)
- && input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- { /* hand over this buffers content and strip gnunet message header */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- }
- else if (input_facility->buffer_size > sizeof(struct GNUNET_MessageHeader))
- input_facility->facility_state = IOSTATE_WAITING;
- else
- input_facility->facility_state = IOSTATE_READY;
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, let the rest of the elements finish */
- input_facility->path_open = FALSE;
- input_facility->facility_state = IOSTATE_FAILED;
- if (IOSTATE_WAITING == output_facility->facility_state)
- output_facility->path_open = FALSE;
- fprintf(stderr, "FATAL: Read from handle failed, allowing write to finish\n");
- }
- }
- }
- return TRUE;
-
- case IOSTATE_RESUME: /* Our buffer was filled already but our write facility was busy. */
- GNUNET_memcpy(output_facility->buffer,
- input_facility->buffer + sizeof(struct GNUNET_MessageHeader),
- input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader));
- output_facility->buffer_size = input_facility->buffer_size - sizeof(struct GNUNET_MessageHeader);
- output_facility->facility_state = IOSTATE_READY;
- input_facility->facility_state = IOSTATE_READY;
- return TRUE;
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Attempts to write to an output facility (tap or named pipe) in overlapped mode.
- *
- * TODO: high level description
- *
- * @param output_facility output pipe or file to hand over data to.
- * @param input_facility input named pipe or file to work with.
- * @return false if an event reset was impossible (OS error), else true
- */
-static BOOL
-attempt_write(struct io_facility * output_facility,
- struct io_facility * input_facility)
-{
- switch (output_facility->facility_state)
- {
- case IOSTATE_READY:
- output_facility->buffer_size_written = 0;
-
-continue_partial_write:
- if (!ResetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- /* Check how the task was handled */
- if (WriteFile(output_facility->handle,
- output_facility->buffer + output_facility->buffer_size_written,
- output_facility->buffer_size - output_facility->buffer_size_written,
- &output_facility->buffer_size_processed,
- &output_facility->overlapped))
- {/* async event processed immediately*/
- fprintf(stderr, "DEBUG: write succeeded immediately\n");
- output_facility->buffer_size_written += output_facility->buffer_size_processed;
-
- /* reset event manually*/
- if (!SetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- /* partial write */
- if (output_facility->buffer_size_written < output_facility->buffer_size)
- goto continue_partial_write;
-
- /* we are now waiting for our buffer to be filled*/
- output_facility->facility_state = IOSTATE_WAITING;
-
- /* we successfully wrote something and now need to reset our reader */
- if (IOSTATE_WAITING == input_facility->facility_state)
- input_facility->facility_state = IOSTATE_RESUME;
- else if (IOSTATE_FAILED == input_facility->facility_state)
- output_facility->path_open = FALSE;
- }
- else /* operation was either queued or failed*/
- {
- int err = GetLastError();
- if (ERROR_IO_PENDING == err)
- { /* operation queued */
- output_facility->facility_state = IOSTATE_QUEUED;
- }
- else
- { /* error occurred, close this path */
- output_facility->path_open = FALSE;
- output_facility->facility_state = IOSTATE_FAILED;
- fprintf(stderr, "FATAL: Write to handle failed, exiting\n");
- }
- }
- return TRUE;
-
- case IOSTATE_QUEUED:
- // there was an operation going on already, check if that has completed now.
-
- if (GetOverlappedResult(output_facility->handle,
- &output_facility->overlapped,
- &output_facility->buffer_size_processed,
- FALSE))
- {/* successful return for a queued operation */
- if (!ResetEvent(output_facility->overlapped.hEvent))
- return FALSE;
-
- fprintf(stderr, "DEBUG: write succeeded delayed\n");
- output_facility->buffer_size_written += output_facility->buffer_size_processed;
-
- /* partial write */
- if (output_facility->buffer_size_written < output_facility->buffer_size)
- goto continue_partial_write;
-
- /* we are now waiting for our buffer to be filled*/
- output_facility->facility_state = IOSTATE_WAITING;
-
- /* we successfully wrote something and now need to reset our reader */
- if (IOSTATE_WAITING == input_facility->facility_state)
- input_facility->facility_state = IOSTATE_RESUME;
- else if (IOSTATE_FAILED == input_facility->facility_state)
- output_facility->path_open = FALSE;
- }
- else
- { /* operation still pending/queued or failed? */
- int err = GetLastError();
- if ((ERROR_IO_INCOMPLETE != err) && (ERROR_IO_PENDING != err))
- { /* error occurred, close this path */
- output_facility->path_open = FALSE;
- output_facility->facility_state = IOSTATE_FAILED;
- fprintf(stderr, "FATAL: Write to handle failed, exiting\n");
- }
- }
-
- default:
- return TRUE;
- }
-}
-
-
-/**
- * Initialize a overlapped structure
- *
- * @param elem the element to initilize
- * @param initial_state the initial state for this instance
- * @param signaled if the hEvent created should default to signaled or not
- * @return true on success, else false
- */
-static BOOL
-initialize_io_facility(struct io_facility * elem,
- int initial_state,
- BOOL signaled)
-{
- elem->path_open = TRUE;
- elem->handle = INVALID_HANDLE_VALUE;
- elem->facility_state = initial_state;
- elem->buffer_size = 0;
- elem->overlapped.hEvent = CreateEvent(NULL, TRUE, signaled, NULL);
- if (NULL == elem->overlapped.hEvent)
- return FALSE;
-
- return TRUE;
-}
-
-
-/**
- * Start forwarding to and from the tunnel.
- *
- * @param tap_handle device handle for interacting with the Virtual interface
- */
-static void
-run(HANDLE tap_handle)
-{
- /* IO-Facility for reading from our virtual interface */
- struct io_facility tap_read;
- /* IO-Facility for writing to our virtual interface */
- struct io_facility tap_write;
- /* IO-Facility for reading from stdin */
- struct io_facility std_in;
- /* IO-Facility for writing to stdout */
- struct io_facility std_out;
-
- HANDLE parent_std_in_handle = GetStdHandle(STD_INPUT_HANDLE);
- HANDLE parent_std_out_handle = GetStdHandle(STD_OUTPUT_HANDLE);
-
- /* tun up: */
- /* we do this HERE and not beforehand (in init_tun()), in contrast to openvpn
- * to remove the need to flush the arp cache, handle DHCP and wrong IPs.
- *
- * DHCP and such are all features we will never use in gnunet afaik.
- * But for openvpn those are essential.
- */
- if ((privilege_testing) || (!tun_up(tap_handle)))
- goto teardown_final;
-
- /* Initialize our overlapped IO structures*/
- if (!(initialize_io_facility(&tap_read, IOSTATE_READY, FALSE)
- && initialize_io_facility(&tap_write, IOSTATE_WAITING, TRUE)
- && initialize_io_facility(&std_in, IOSTATE_READY, FALSE)
- && initialize_io_facility(&std_out, IOSTATE_WAITING, TRUE)))
- goto teardown_final;
-
- /* Handles for STDIN and STDOUT */
- tap_read.handle = tap_handle;
- tap_write.handle = tap_handle;
-
-#ifdef DEBUG_TO_CONSOLE
- /* Debug output to console STDIN/STDOUT*/
- std_in.handle = parent_std_in_handle;
- std_out.handle = parent_std_out_handle;
-#else
- fprintf(stderr, "DEBUG: reopening stdin/out for overlapped IO\n");
- /*
- * Find out the types of our handles.
- * This part is a problem, because in windows we need to handle files,
- * pipes and the console differently.
- */
- if ((FILE_TYPE_PIPE != GetFileType(parent_std_in_handle)) ||
- (FILE_TYPE_PIPE != GetFileType(parent_std_out_handle)))
- {
- fprintf(stderr, "ERROR: stdin/stdout must be named pipes\n");
- goto teardown;
- }
-
- std_in.handle = ReOpenFile(parent_std_in_handle,
- GENERIC_READ,
- FILE_SHARE_WRITE | FILE_SHARE_READ,
- FILE_FLAG_OVERLAPPED);
-
- if (INVALID_HANDLE_VALUE == std_in.handle)
- {
- fprintf(stderr, "FATAL: Could not reopen stdin for in overlapped mode, has to be a named pipe\n");
- goto teardown;
- }
-
- std_out.handle = ReOpenFile(parent_std_out_handle,
- GENERIC_WRITE,
- FILE_SHARE_READ,
- FILE_FLAG_OVERLAPPED);
-
- if (INVALID_HANDLE_VALUE == std_out.handle)
- {
- fprintf(stderr, "FATAL: Could not reopen stdout for in overlapped mode, has to be a named pipe\n");
- goto teardown;
- }
-#endif
-
- fprintf(stderr, "DEBUG: mainloop has begun\n");
-
- while (std_out.path_open || tap_write.path_open)
- {
- /* perform READ from stdin if possible */
- if (std_in.path_open && (!attempt_read_stdin(&std_in, &tap_write)))
- break;
-
- /* perform READ from tap if possible */
- if (tap_read.path_open && (!attempt_read_tap(&tap_read, &std_out)))
- break;
-
- /* perform WRITE to tap if possible */
- if (tap_write.path_open && (!attempt_write(&tap_write, &std_in)))
- break;
-
- /* perform WRITE to STDOUT if possible */
- if (std_out.path_open && (!attempt_write(&std_out, &tap_read)))
- break;
- }
-
- fprintf(stderr, "DEBUG: teardown initiated\n");
-teardown:
- CancelIo(tap_handle);
- CancelIo(std_in.handle);
- CancelIo(std_out.handle);
-teardown_final:
- CloseHandle(tap_handle);
-}
-
-
-/**
- * Open VPN tunnel interface.
- *
- * @param argc must be 6
- * @param argv 0: binary name (gnunet-helper-vpn)
- * [1: dryrun/testrun (does not execute mainloop)]
- * 2: tunnel interface prefix (gnunet-vpn)
- * 3: IPv6 address (::1), "-" to disable
- * 4: IPv6 netmask length in bits (64), ignored if #2 is "-"
- * 5: IPv4 address (1.2.3.4), "-" to disable
- * 6: IPv4 netmask (255.255.0.0), ignored if #4 is "-"
- */
-int
-main(int argc, char **argv)
-{
- char hwid[LINE_LEN];
- HANDLE handle;
- int global_ret = 0;
- BOOL have_ip4 = FALSE;
- BOOL have_ip6 = FALSE;
-
- if (argc > 1 && 0 == strcmp(argv[1], "-d"))
- {
- privilege_testing = TRUE;
- fprintf(stderr,
- "%s",
- "DEBUG: Running binary in privilege testing mode.");
- argv++;
- argc--;
- }
-
- if (6 != argc)
- {
- fprintf(stderr,
- "%s",
- "FATAL: must supply 5 arguments\nUsage:\ngnunet-helper-vpn [-d] <if name prefix> <address6 or \"-\"> <netbits6> <address4 or \"-\"> <netmask4>\n");
- return 1;
- }
-
- GNUNET_strlcpy(hwid, argv[1], sizeof(hwid));
-
- /*
- * We use our PID for finding/resolving the control-panel name of our virtual
- * device. PIDs are (of course) unique at runtime, thus we can safely use it
- * as additional hardware-id for our device.
- */
- snprintf(secondary_hwid, LINE_LEN / 2, "%s-%d",
- hwid,
- _getpid());
-
- if (INVALID_HANDLE_VALUE == (handle = init_tun()))
- {
- fprintf(stderr, "FATAL: could not initialize virtual-interface %s with IPv6 %s/%s and IPv4 %s/%s\n",
- hwid,
- argv[2],
- argv[3],
- argv[4],
- argv[5]);
- global_ret = -1;
- goto cleanup;
- }
-
- fprintf(stderr, "DEBUG: Setting IPs, if needed\n");
- if (0 != strcmp(argv[2], "-"))
- {
- const char *address = argv[2];
- long prefix_len = atol(argv[3]);
-
- if ((prefix_len < 1) || (prefix_len > 127))
- {
- fprintf(stderr, "FATAL: ipv6 prefix_len out of range\n");
- global_ret = -1;
- goto cleanup;
- }
-
- fprintf(stderr, "DEBUG: Setting IP6 address: %s/%d\n", address, prefix_len);
- if (0 != (global_ret = set_address6(address, prefix_len)))
- goto cleanup;
-
- have_ip6 = TRUE;
- }
-
- if (0 != strcmp(argv[4], "-"))
- {
- const char *address = argv[4];
- const char *mask = argv[5];
-
- fprintf(stderr, "DEBUG: Setting IP4 address: %s/%s\n", address, mask);
- if (0 != (global_ret = set_address4(address, mask)))
- goto cleanup;
-
- have_ip4 = TRUE;
- }
-
- run(handle);
-cleanup:
-
- if (have_ip4)
- {
- const char *address = argv[4];
- fprintf(stderr, "DEBUG: Removing IP4 address\n");
- remove_address4(address);
- }
- if (have_ip6)
- {
- const char *address = argv[2];
- fprintf(stderr, "DEBUG: Removing IP6 address\n");
- remove_address6(address);
- }
-
- fprintf(stderr, "DEBUG: removing interface\n");
- remove_interface();
- fprintf(stderr, "DEBUG: graceful exit completed\n");
-
- return global_ret;
-}
pkgcfg_DATA = \
zonemaster.conf
-if MINGW
- WINFLAGS = -Wl,--no-undefined -Wl,--export-all-symbols
-endif
-
if USE_COVERAGE
AM_CFLAGS = --coverage -O0
XLIBS = -lgcov