Changes of Revision 6
[-] | Changed | bacula.changes |
1
2 ------------------------------------------------------------------- 3 +Mon Aug 6 18:02:52 UTC 2012 - cs@linux-administrator.com 4 + 5 +- update to release 5.2.10 6 + 7 +------------------------------------------------------------------- 8 Sun Jun 24 16:50:15 UTC 2012 - cs@linux-administrator.com 9 10 - update to release 5.2.9 11 |
||
[-] | Changed | bacula.spec ^ |
34 1
2 # 3 -# spec file for package bacula (Version 5.2.9) 4 +# spec file for package bacula (Version 5.2.10) 5 # 6 # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. 7 # 8
9 10 # norootforbuild 11 12 -%define pkgversion 5.2.9 13 +%define pkgversion 5.2.10 14 15 Name: bacula 16 %define _fwdefdir /etc/sysconfig/SuSEfirewall2.d/services 17
18 BuildRequires: tcp_wrappers-devel 19 %endif 20 21 -%define _libver 5_2_9 22 -%define _sover 5.2.9 23 +%define _libver 5_2_10 24 +%define _sover 5.2.10 25 26 License: GPL v2 or later 27 Group: Productivity/Archiving/Backup 28 AutoReqProv: on 29 -Version: 5.2.9 30 +Version: 5.2.10 31 Release: 1 32 Summary: Bacula--The Network Backup Solution: Client Part 33 Url: http://www.bacula.org 34 |
||
[+] | Changed | bacula-5.2.10.tar.bz2/ChangeLog ^ |
@@ -1,4 +1,43 @@ - Changelog on version 5.2.9 + Changelog on version 5.2.10 +Version 5.2.10 + +27Jun12 + - Add extra test for unsupported Protocol Families. + +26Jun12 + - Fix inet_pton call. + - Real fix of bug #1897 5.2.9 breaks IPv6 connectivity + - Fix bug #1891 wrong daemon name printed with -? option + - Fix bug #1859 INSERT INTO Counters fails + +25Jun12 + - First try at fixing bug #1897 5.2.9 breaks IPv6 connectivity + +23Jun12 + - Convert write_rec_to_block() to a state machine + +18Jun12 + - Fix bat from eating all Dir connections -- fixes bug #1872 + - Back port fixes from BEE to fix Windows bug #1892 + +15Jun12 + - Add block checksum flag to version.h + - Add block checksum debug code + - Fix bug #1893 dbcheck -B gives rwl_writelock error. + +13Jun12 + - Remove restriction of network buffer size being multiple of a tape block + +11Jun12 + - Recompile configure.in + - Add rudimentary support for saving AFS acls. + +04Jun12 + - Send level before the fileset in estimate_cmd() like in backup() + +Bugs fixed/closed since last release: +1859 1872 1891 1892 1893 1897 + Version 5.2.9 11Jun12 | ||
[+] | Changed | bacula-5.2.10.tar.bz2/ReleaseNotes ^ |
@@ -1,10 +1,83 @@ - Release Notes for Bacula 5.2.9 + Release Notes for Bacula 5.2.10 Bacula code: Total files = 1,110 Total lines = 231,439 (Using SLOCCount) General: -------- +The 5.2.10 version is a significant bug fix release including +our first cut at AFS support. + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +Please note that with this version of Bacula, during the install +of the shared libraries from the src/cats, src/lib, and src/findlib +directories, any old Bacula libraries in the installation +destination directory will be removed. This should not cause +any problems and at least keeps the installation library cleaner. +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +For packagers, if you change options, naming, and the way +we link our shared object files, as at least one of you does, +you are creating a situation where the user may not be able +to run multiple versions of Bacula on the same machine, which +is often very useful, and in addition, you create a configuration +that the project cannot properly support. +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +If you are upgrading from a version older than 5.2.9, please +read all the old ReleaseNotes of all versions released +after the version you are upgrading from. There area +many important notices sumarized here, and we do not +repeat them each bug fix release. +!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +Compatibility: +-------------- + As always, both the Director and Storage daemon must be upgraded at + the same time. + + Older 5.0.x and 3.0.x File Daemons are compatible with the 5.2.9 + Director and Storage daemons. There should be no need to upgrade older File + Daemons. + +Major changes since 5.2.9: +- Fix IPv6 networking +- Fix SQL Counter problems +- Fix Bat hanging after running a number of jobs +- Fix dbcheck rw_writelock problem +- Fix Windows VSS restore bug + +New Feature: +- Add rudimentary support for backing up AFS + + +28Jun12 + - Add extra test for unsupported Protocol Families. + - Fix inet_pton call. + - Real fix of bug #1897 5.2.9 breaks IPv6 connectivity + - Fix bug #1891 wrong daemon name printed with -? option + - Fix bug #1859 INSERT INTO Counters fails + - First try at fixing bug #1897 5.2.9 breaks IPv6 connectivity + - Convert write_rec_to_block() to a state machine + - Fix bat from eating all Dir connections -- fixes bug #1872 + - Back port fixes from BEE to fix Windows restore bug #1892 + - Add block checksum flag to version.h + - Add block checksum debug code + - Fix bug #1893 dbcheck -B gives rwl_writelock error. + - Remove restriction of network buffer size being multiple of a tape block + - Add rudimentary support for saving AFS acls. + - Send level before the fileset in estimate_cmd() like in backup() + +Bugs fixed/closed since last release: +1859 1872 1891 1892 1893 1897 + + +=============================================================== + +General: +-------- The 5.2.9 version is a bug fix release. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | ||
[+] | Changed | bacula-5.2.10.tar.bz2/autoconf/acconfig.h ^ |
@@ -49,9 +49,6 @@ /* Define if you have GCC */ #undef HAVE_GCC -/* Define if you have the Andrew File System. */ -#undef AFS - /* Define If you want find -nouser and -nogroup to make tables of used UIDs and GIDs at startup instead of using getpwuid or getgrgid when needed. Speeds up -nouser and -nogroup unless you @@ -117,9 +114,6 @@ /* Define if you have libacl */ #undef HAVE_ACL -/* Define if you have AFS acls */ -#undef HAVE_AFS_ACL - /* General libs */ #undef LIBS | ||
[+] | Changed | bacula-5.2.10.tar.bz2/autoconf/config.h.in ^ |
@@ -49,9 +49,6 @@ /* Define if you have GCC */ #undef HAVE_GCC -/* Define if you have the Andrew File System. */ -#undef AFS - /* Define If you want find -nouser and -nogroup to make tables of used UIDs and GIDs at startup instead of using getpwuid or getgrgid when needed. Speeds up -nouser and -nogroup unless you @@ -117,9 +114,6 @@ /* Define if you have libacl */ #undef HAVE_ACL -/* Define if you have AFS acls */ -#undef HAVE_AFS_ACL - /* General libs */ #undef LIBS @@ -238,6 +232,18 @@ /* Define to 1 if you have the 'add_proplist_entry' function. */ #undef HAVE_ADD_PROPLIST_ENTRY +/* Define to 1 if your system has AFS support */ +#undef HAVE_AFS + +/* Andrew FileSystem ACL support */ +#undef HAVE_AFS_ACL + +/* Define to 1 if you have the <afs/afsint.h> header file. */ +#undef HAVE_AFS_AFSINT_H + +/* Define to 1 if you have the <afs/venus.h> header file. */ +#undef HAVE_AFS_VENUS_H + /* Define to 1 if you have `alloca', as a function or macro. */ #undef HAVE_ALLOCA | ||
[+] | Changed | bacula-5.2.10.tar.bz2/autoconf/configure.in ^ |
@@ -2518,6 +2518,113 @@ AC_SUBST(LZOLIBS) dnl +dnl Check if we have AFS on this system +dnl +AFS_CFLAGS="" +AFS_LIBS="" +support_afs=auto +AC_ARG_ENABLE(afs, + AC_HELP_STRING([--disable-afs], [disable afs support @<:@default=auto@:>@]), + [ + if test x$enableval = xyes; then + support_afs=yes + elif test x$enableval = xno; then + support_afs=no + fi + ] +) + +have_afs=no +if test x$support_afs = xyes -o x$support_afs = xauto; then + AC_ARG_WITH(afsdir, + AC_HELP_STRING([--with-afsdir@<:@=DIR@:>@], [Directory holding AFS includes/libs]), + with_afsdir=$withval + ) + + dnl + dnl Search in standard places, or --with-afsdir not specified + dnl + if test x$with_afsdir = x; then + for root in /usr /usr/local; do + if test -d ${root}/include/afs/ ; then + with_afsdir=${root} + break + fi + if test -d ${root}/include/openafs/afs/ ; then + with_afsdir=${root} + break + fi + done + fi + + if test -d ${with_afsdir}/include/afs/ ; then + AFS_CFLAGS="-I${with_afsdir}/include" + else + if test -d ${with_afsdir}/include/openafs/afs/ ; then + AFS_CFLAGS="-I${with_afsdir}/include/openafs" + fi + fi + + saved_CFLAGS="${CFLAGS}" + saved_CPPFLAGS="${CPPFLAGS}" + CFLAGS="${AFS_CFLAGS} ${saved_CFLAGS}" + CPPFLAGS="${AFS_CFLAGS} ${saved_CPPFLAGS}" + + AC_CHECK_HEADERS(afs/afsint.h) + AC_TRY_CPP( + [ + #include <afs/afsint.h> + #include <afs/venus.h> + ], + AC_DEFINE(HAVE_AFS_VENUS_H,1,[Define to 1 if you have the <afs/venus.h> header file.]) + ) + + CFLAGS="${saved_CFLAGS}" + CPPFLAGS="${saved_CPPFLAGS}" + + dnl + dnl See if we can find a libsys with the pioctl symbol in there + dnl + AC_MSG_CHECKING(for pioctl in AFS libsys) + for dir in ${with_afsdir}/lib \ + ${with_afsdir}/lib/afs \ + ${with_afsdir}/lib/openafs \ + ${with_afsdir}/lib64 \ + ${with_afsdir}/lib64/afs \ + ${with_afsdir}/lib64/openafs + do + for arch_type in .a .so + do + A=`test -f ${dir}/libsys${arch_type} && nm ${dir}/libsys${arch_type} 2>/dev/null | grep pioctl` + pkg=$? + if test $pkg = 0; then + have_afs=yes + AFS_LIBS="-L${dir} -lsys -lrx -llwp ${dir}/util${arch_type}" + break + fi + done + done + + if test $have_afs = yes; then + AC_MSG_RESULT(yes) + else + AC_MSG_RESULT(no) + fi + + if test x$support_afs = xyes -a $have_afs != yes; then + AC_MSG_ERROR([afs support explicitly enabled but no supported afs implementation found, + please either load the afs libraries or rerun configure without --enable-afs]) + else + if test $have_afs = yes; then + AC_DEFINE(HAVE_AFS,1,[Define to 1 if your system has AFS support]) + AC_DEFINE(HAVE_AFS_ACL,1,[Andrew FileSystem ACL support]) + fi + fi +fi +AC_SUBST(AFS_CFLAGS) +AC_SUBST(AFS_LIBS) + +dnl dnl Check for ACL support and libraries dnl support_acl=auto @@ -2553,7 +2660,18 @@ AC_CHECK_LIB(acl, acl_get_file, [ have_acl=yes - FDLIBS="-lacl $FDLIBS" + if test $have_afs = yes; then + dnl + dnl Because of possible naming conflict with AFS libacl make sure we use the one in /usr/lib64 or /usr/lib !!! + dnl + if test -d /usr/lib64/; then + FDLIBS="-L/usr/lib64 -lacl $FDLIBS" + else + FDLIBS="-L/usr/lib -lacl $FDLIBS" + fi + else + FDLIBS="-lacl $FDLIBS" + fi ] ) fi @@ -3523,6 +3641,7 @@ build-dird: ${build_dird} build-stored: ${build_stored} Plugin support: ${have_plugins} + AFS support: ${have_afs} ACL support: ${have_acl} XATTR support: ${have_xattr} Python support: ${support_python} ${PYTHON_LIBS} | ||
[+] | Changed | bacula-5.2.10.tar.bz2/configure ^ |
@@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.68 for bacula 5.2.8. +# Generated by GNU Autoconf 2.68 for bacula 5.2.9. # # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -567,8 +567,8 @@ # Identity of this package. PACKAGE_NAME='bacula' PACKAGE_TARNAME='bacula' -PACKAGE_VERSION='5.2.8' -PACKAGE_STRING='bacula 5.2.8' +PACKAGE_VERSION='5.2.9' +PACKAGE_STRING='bacula 5.2.9' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -628,6 +628,8 @@ DEBUG FDLIBS CAP_LIBS +AFS_LIBS +AFS_CFLAGS LZOLIBS ZLIBS LIBOBJS @@ -993,6 +995,8 @@ with_sqlite3 enable_largefile with_x +enable_afs +with_afsdir enable_acl enable_xattr with_systemd @@ -1555,7 +1559,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures bacula 5.2.8 to adapt to many kinds of systems. +\`configure' configures bacula 5.2.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1624,7 +1628,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of bacula 5.2.8:";; + short | recursive ) echo "Configuration of bacula 5.2.9:";; esac cat <<\_ACEOF @@ -1662,6 +1666,7 @@ --disable-readline disable readline support [default=yes] --enable-batch-insert enable the DB batch insert code [default=yes] --disable-largefile omit support for large files + --disable-afs disable afs support [default=auto] --disable-acl disable acl support [default=auto] --disable-xattr disable xattr support [default=auto] @@ -1737,6 +1742,7 @@ install directory, default is to search through a number of common places for the SQLite3 files. --with-x use the X Window System + --with-afsdir[=DIR] Directory holding AFS includes/libs --with-systemd[=UNITDIR] Include systemd support. UNITDIR is where systemd system .service files are located, default is to ask @@ -1825,7 +1831,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -bacula configure 5.2.8 +bacula configure 5.2.9 generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. @@ -2755,7 +2761,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by bacula $as_me 5.2.8, which was +It was created by bacula $as_me 5.2.9, which was generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -29429,6 +29435,134 @@ +AFS_CFLAGS="" +AFS_LIBS="" +support_afs=auto +# Check whether --enable-afs was given. +if test "${enable_afs+set}" = set; then : + enableval=$enable_afs; + if test x$enableval = xyes; then + support_afs=yes + elif test x$enableval = xno; then + support_afs=no + fi + + +fi + + +have_afs=no +if test x$support_afs = xyes -o x$support_afs = xauto; then + +# Check whether --with-afsdir was given. +if test "${with_afsdir+set}" = set; then : + withval=$with_afsdir; with_afsdir=$withval + +fi + + + if test x$with_afsdir = x; then + for root in /usr /usr/local; do + if test -d ${root}/include/afs/ ; then + with_afsdir=${root} + break + fi + if test -d ${root}/include/openafs/afs/ ; then + with_afsdir=${root} + break + fi + done + fi + + if test -d ${with_afsdir}/include/afs/ ; then + AFS_CFLAGS="-I${with_afsdir}/include" + else + if test -d ${with_afsdir}/include/openafs/afs/ ; then + AFS_CFLAGS="-I${with_afsdir}/include/openafs" + fi + fi + + saved_CFLAGS="${CFLAGS}" + saved_CPPFLAGS="${CPPFLAGS}" + CFLAGS="${AFS_CFLAGS} ${saved_CFLAGS}" + CPPFLAGS="${AFS_CFLAGS} ${saved_CPPFLAGS}" + + for ac_header in afs/afsint.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "afs/afsint.h" "ac_cv_header_afs_afsint_h" "$ac_includes_default" +if test "x$ac_cv_header_afs_afsint_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_AFS_AFSINT_H 1 +_ACEOF + +fi + +done + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include <afs/afsint.h> + #include <afs/venus.h> + +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +$as_echo "#define HAVE_AFS_VENUS_H 1" >>confdefs.h + + +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + CFLAGS="${saved_CFLAGS}" + CPPFLAGS="${saved_CPPFLAGS}" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pioctl in AFS libsys" >&5 +$as_echo_n "checking for pioctl in AFS libsys... " >&6; } + for dir in ${with_afsdir}/lib \ + ${with_afsdir}/lib/afs \ + ${with_afsdir}/lib/openafs \ + ${with_afsdir}/lib64 \ + ${with_afsdir}/lib64/afs \ + ${with_afsdir}/lib64/openafs + do + for arch_type in .a .so + do + A=`test -f ${dir}/libsys${arch_type} && nm ${dir}/libsys${arch_type} 2>/dev/null | grep pioctl` + pkg=$? + if test $pkg = 0; then + have_afs=yes + AFS_LIBS="-L${dir} -lsys -lrx -llwp ${dir}/util${arch_type}" + break + fi + done + done + + if test $have_afs = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + + if test x$support_afs = xyes -a $have_afs != yes; then + as_fn_error $? "afs support explicitly enabled but no supported afs implementation found, + please either load the afs libraries or rerun configure without --enable-afs" "$LINENO" 5 + else + if test $have_afs = yes; then + +$as_echo "#define HAVE_AFS 1" >>confdefs.h + + +$as_echo "#define HAVE_AFS_ACL 1" >>confdefs.h + + fi + fi +fi + + + support_acl=auto # Check whether --enable-acl was given. if test "${enable_acl+set}" = set; then : @@ -29504,7 +29638,15 @@ if test "x$ac_cv_lib_acl_acl_get_file" = xyes; then : have_acl=yes - FDLIBS="-lacl $FDLIBS" + if test $have_afs = yes; then + if test -d /usr/lib64/; then + FDLIBS="-L/usr/lib64 -lacl $FDLIBS" + else + FDLIBS="-L/usr/lib -lacl $FDLIBS" + fi + else + FDLIBS="-lacl $FDLIBS" + fi fi @@ -31313,7 +31455,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by bacula $as_me 5.2.8, which was +This file was extended by bacula $as_me 5.2.9, which was generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31379,7 +31521,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -bacula config.status 5.2.8 +bacula config.status 5.2.9 configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" @@ -33701,6 +33843,7 @@ build-dird: ${build_dird} build-stored: ${build_stored} Plugin support: ${have_plugins} + AFS support: ${have_afs} ACL support: ${have_acl} XATTR support: ${have_xattr} Python support: ${support_python} ${PYTHON_LIBS} | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/POTFILES.in ^ |
@@ -328,7 +328,6 @@ ./src/win32/compat/mswinver.h ./src/win32/compat/compat.h ./src/win32/compat/arpa/inet.h -./src/win32/compat/winconfig.h ./src/win32/compat/pwd.h ./src/win32/compat/winsock.h ./src/win32/compat/mingwconfig.h | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/bacula.pot ^ |
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -727,7 +727,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -1944,11 +1944,11 @@ msgid "No job specified.\n" msgstr "" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "" @@ -3074,12 +3074,17 @@ msgid "Warning default storage overridden by \"%s\" on command line.\n" msgstr "" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3141,7 +3146,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "" @@ -3184,8 +3189,8 @@ msgstr "" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "" @@ -4972,7 +4977,7 @@ "%s: ERR=%s\n" msgstr "" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "" @@ -5794,13 +5799,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "" @@ -6116,14 +6121,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "" @@ -6747,7 +6752,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "" @@ -8024,8 +8029,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "" @@ -8133,11 +8138,11 @@ msgid "unknown: %d" msgstr "" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8292,7 +8297,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -10896,190 +10901,195 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 msgid "Job failed or canceled.\n" msgstr "" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -11291,56 +11301,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -11371,141 +11381,136 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 msgid "fread attr spool I/O error.\n" msgstr "" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " "TLS support.\n" msgstr "" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " "TLS.\n" msgstr "" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" "The Director at \"%s:%d\" is probably not running.\n" msgstr "" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -11644,51 +11649,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "" @@ -12660,7 +12665,7 @@ msgid "Unknown error." msgstr "" -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "" @@ -13779,7 +13784,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "" @@ -13910,7 +13915,7 @@ msgstr "" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -13970,7 +13975,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14081,66 +14086,66 @@ msgid "Client record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, c-format msgid "query dbids failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "" @@ -14213,9 +14218,9 @@ msgid "unknown" msgstr "" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "" @@ -14236,7 +14241,7 @@ "It is probably not running or your password is incorrect.\n" msgstr "" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 msgid "A user name for Ingres must be supplied.\n" msgstr "" @@ -14317,39 +14322,39 @@ "exceeded.\n" msgstr "" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, c-format msgid "error starting batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, c-format msgid "error ending batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, c-format msgid "error copying in batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "" @@ -14386,20 +14391,20 @@ "exceeded.\n" msgstr "" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, c-format msgid "error inserting batch mode: %s" msgstr "" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 msgid "Driver type not specified in Catalog resource.\n" msgstr "" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 msgid "A user name for DBI must be supplied.\n" msgstr "" @@ -14431,7 +14436,7 @@ "incorrect.\n" msgstr "" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "" @@ -14568,12 +14573,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "" @@ -15598,10 +15603,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -15861,7 +15866,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "" @@ -16005,179 +16010,189 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "" + +#: src/filed/acl.c:2148 +#, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -16329,34 +16344,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, c-format msgid "Compression LZO error: %d\n" msgstr "" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -16565,247 +16580,247 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, c-format msgid "Bad RestoreObject command: %s\n" msgstr "" -#: src/filed/job.c:789 +#: src/filed/job.c:785 msgid "2909 Bad RestoreObject command.\n" msgstr "" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" msgstr "" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -16996,47 +17011,47 @@ "\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" "\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/de.po ^ |
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: de\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2007-06-25 20:38+0200\n" "Last-Translator: Philipp Storz <philipp.storz@dass-it.de>\n" "Language-Team: \n" @@ -771,7 +771,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -2064,11 +2064,11 @@ msgid "No job specified.\n" msgstr "" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "" @@ -3213,12 +3213,17 @@ msgid "Warning default storage overridden by \"%s\" on command line.\n" msgstr "" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3286,7 +3291,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "Kann Programm: %s nicht starten. ERR=%s\n" @@ -3332,8 +3337,8 @@ "msglen=%d msg=%s\n" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "Attribute create error. %s" @@ -5202,7 +5207,7 @@ "Konnte WriteBootstrap nicht öffnen. Datei:\n" "%s: ERR=%s\n" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "Kann bootstrap Datei nicht öffnen: %s: ERR=%s\n" @@ -6078,13 +6083,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "Ungültige Catalog Aktualisierung; DB nicht geöffnet: %s" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, fuzzy, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "Regex Übersetzungsfehler. ERR=%s\n" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "Storage daemon" @@ -6422,14 +6427,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "" @@ -7071,7 +7076,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "" @@ -8377,8 +8382,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "" @@ -8486,11 +8491,11 @@ msgid "unknown: %d" msgstr "unbekannt" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8645,7 +8650,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -11286,191 +11291,196 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 #, fuzzy msgid "Job failed or canceled.\n" msgstr "JobId %s, Job %s zum Abbruch markiert.\n" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -11682,56 +11692,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -11762,112 +11772,107 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "Erzeugung des db Filename Eintrags %s fehlgeschlagen. ERR=%s\n" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, fuzzy, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, fuzzy, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, fuzzy, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "Konnte job queue nicht initialiseren: ERR=%s\n" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, fuzzy, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "" "Fehler beim senden des Kommandos Hello an File daemon auf \"%s:%d\". ERR=%s\n" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, fuzzy, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 #, fuzzy msgid "fread attr spool I/O error.\n" msgstr "Regex Übersetzungsfehler. ERR=%s\n" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, fuzzy, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "Regex Übersetzungsfehler. ERR=%s\n" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, fuzzy, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "Regex Übersetzungsfehler. ERR=%s\n" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, fuzzy, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "Authorisationsproblem: FD an \"%s:%d\" erfordert TLS.\n" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, fuzzy, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " @@ -11876,31 +11881,31 @@ "Authorisationsproblem: Entfernter Server hat benötigte TLS Unterstützung " "nicht angeboten.\n" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, fuzzy, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " "TLS.\n" msgstr "Authorisationsproblem: Enfernter Server erfordert TLS.\n" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, fuzzy, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "TLS Aushandlung fehlgeschlagen mit SD an \"%s:%d\"\n" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" "The Director at \"%s:%d\" is probably not running.\n" msgstr "" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, fuzzy, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "File daemon auf \"%s:%d\" hat Hello Kommando abgelehnt\n" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, fuzzy, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -12045,51 +12050,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "" @@ -13077,7 +13082,7 @@ msgid "Unknown error." msgstr "" -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "" @@ -14201,7 +14206,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "Pool Ressource \"%s\" nicht gefunden.\n" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "" @@ -14332,7 +14337,7 @@ msgstr "Mehr als ein Pfad!: %s für Pfad: %s\n" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -14392,7 +14397,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14503,66 +14508,66 @@ msgid "Client record not found in Catalog.\n" msgstr "Client Eintrag nicht in Catalog gefunden\n" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "Mehr als ein Counter!: %d\n" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "Fehler beim Holen der Counter Zeile: %s\n" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "Counter Eintrag: %s in Catalog nicht gefunden.\n" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "Fehler erhalten %s FileSets aber nur einen erwartet!\n" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "FileSet Eintrag \"%s\" nicht gefunden\n" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "FileSet Eintrag in Catalog nicht gefunden.\n" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "Media id select fehlgeschlagen: ERR=%s\n" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, fuzzy, c-format msgid "query dbids failed: ERR=%s\n" msgstr "Abfrage gescheitert: %s: ERR=%s\n" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "Mehr als ein Volume!: %s\n" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "Media Eintrag MediaId=%s nicht gefunden.\n" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "Media Eintrag für Volume \"%s\" nicht gefunden.\n" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "Media Eintrag für MediaId=%u in Catalog nicht gefunden.\n" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "Media Eintrag für Vol=%s in Catalog nicht gefunden.\n" @@ -14640,9 +14645,9 @@ msgid "unknown" msgstr "unbekannt" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "Abfrage gescheitert: %s: ERR=%s\n" @@ -14667,7 +14672,7 @@ "Der Datenbankserver läuft möglicherweise nicht oder das Passwort ist nicht " "korrekt.\n" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 #, fuzzy msgid "A user name for Ingres must be supplied.\n" msgstr "Ein Benutzername für MySQL muss angegeben werden.\n" @@ -14762,39 +14767,39 @@ "Der Datenbankserver läuft möglicherweise nicht oder das Passwort ist nicht " "korrekt.\n" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "Fehler beim Holen des aktuellen Wertes: %s\n" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, fuzzy, c-format msgid "error starting batch mode: %s" msgstr "Fehler beim holen von Zeile: %s\n" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, fuzzy, c-format msgid "error ending batch mode: %s" msgstr "Fehler beim holen von Zeile: %s\n" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, fuzzy, c-format msgid "error copying in batch mode: %s" msgstr "Fehler beim holen von Zeile: %s\n" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "Ein Benutzername für PostgreSQL muss angegeben werden.\n" @@ -14835,21 +14840,21 @@ "Der Datenbankserver läuft möglicherweise nicht oder das Passwort ist nicht " "korrekt.\n" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, fuzzy, c-format msgid "error inserting batch mode: %s" msgstr "Fehler beim holen von Zeile: %s\n" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 #, fuzzy msgid "Driver type not specified in Catalog resource.\n" msgstr "Schlüsselwort %s ist in dieser Ressource nicht erlaubt." -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 #, fuzzy msgid "A user name for DBI must be supplied.\n" msgstr "Ein Benutzername für MySQL muss angegeben werden.\n" @@ -14886,7 +14891,7 @@ "Der Datenbankserver läuft möglicherweise nicht oder das Passwort ist nicht " "korrekt.\n" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "Ein Benutzername für MySQL muss angegeben werden.\n" @@ -15030,12 +15035,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "" @@ -16076,10 +16081,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -16339,7 +16344,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "<filed: Netzwerkfehler beim Holen der Attribute. ERR=%s\n" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, fuzzy, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "Kann Datenbank=%s.nicht öffen. ERR=%s\n" @@ -16498,179 +16503,189 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, fuzzy, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, fuzzy, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "Kann Catalog DB Steuerdatei nicht öffnen %s: ERR=%s\n" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, fuzzy, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "Konnte bootstrap Datei %s nicht erzeugen. ERR=%s\n" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, fuzzy, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, fuzzy, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, fuzzy, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, fuzzy, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, fuzzy, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, fuzzy, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, fuzzy, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, fuzzy, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, fuzzy, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, fuzzy, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, fuzzy, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, fuzzy, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, fuzzy, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "Socket Fehler auf %s Kommando: ERR=%s\n" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, fuzzy, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" + +#: src/filed/acl.c:2148 +#, fuzzy, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "Catalog Fehler beim Aktualisieren von volume \"%s\". ERR=%s" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -16822,34 +16837,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, c-format msgid "Compression LZO error: %d\n" msgstr "" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, fuzzy, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "zu viele items in Job resource\n" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -17060,247 +17075,247 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, fuzzy, c-format msgid "Bad RestoreObject command: %s\n" msgstr "Storage daemon hat \"Job command\": %s abgelehnt\n" -#: src/filed/job.c:789 +#: src/filed/job.c:785 msgid "2909 Bad RestoreObject command.\n" msgstr "" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" msgstr "" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, fuzzy, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "Erzeugung des db Path Eintrags %s fehlgeschlagen. ERR=%s\n" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, fuzzy, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "Kann DB lock nicht initialisieren. ERR=%s\n" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -17508,47 +17523,47 @@ " -? diese Meldung ausgeben.\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" "\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/es.po ^ |
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Bacula 3.0.2\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2009-12-01 16:04-0300\n" "Last-Translator: Victor Hugo dos Santos <listas.vhs@gmail.com>\n" "Language-Team: Bacula Spanish Team <bacula-users-es@lists.sourceforge.net>\n" @@ -790,7 +790,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -2118,11 +2118,11 @@ msgid "No job specified.\n" msgstr "Job no especificado.\n" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "Error al enviar lista incluir.\n" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "Error al enviar lista excluir.\n" @@ -3348,13 +3348,19 @@ "Advertencia, storage por defecto reemplazada por \"%s\" en la línea de " "comandos.\n" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, fuzzy, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" +"Storage \"%s\" no encontrado, usando Storage \"%s\" desde MediaType\"%s\".\n" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" "Storage \"%s\" no encontrado, usando Storage \"%s\" desde MediaType\"%s\".\n" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3424,7 +3430,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "No se puede ejecutar el programa: %s. ERR=%s\n" @@ -3470,8 +3476,8 @@ " msglen=%d msg=%s\n" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "error al crear Atributo.%s" @@ -5423,7 +5429,7 @@ "No se pudo abrir el archivo WriteBootstrap:\n" "%s: ERR=%s\n" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "No se puede abrir el archivo de arranque %s: ERR=%s\n" @@ -6308,13 +6314,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "Actualización de Catalogo Inválida; La Base de Datos no se abre: %s" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "Error fread attr spool. ERR=%s\n" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "Demonio Storage" @@ -6656,14 +6662,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "Conectando con Director %s:%d" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "Servicio Director" @@ -7346,7 +7352,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "3927 Error escaneando comando de liberación: %s\n" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "No se pudo crear el archivo de arranque %s: ERR=%s\n" @@ -8744,8 +8750,8 @@ msgid "Could not ready device %s for append.\n" msgstr "Dispositivo %s puede no está listo para anexar.\n" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "No es posible crear el registro JobMedia para Volumen=\"%s\" Job=%s\n" @@ -8871,11 +8877,11 @@ msgid "unknown: %d" msgstr "desconocido: %d" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "Buffer dañado\n" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -9050,12 +9056,12 @@ msgstr "Auto-cambiador error: ERR=%s\n" #: src/stored/stored.c:87 -#, c-format +#, fuzzy, c-format msgid "" "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -12057,7 +12063,7 @@ msgid "%d block read errors not printed.\n" msgstr "%d errores de lectura de bloques no impresos.\n" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " @@ -12066,7 +12072,7 @@ "Error de volumen de datos en %u:%u! Se busca ID: \"%s\",se obtiene \"%s\". " "Buffer descartado.\n" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " @@ -12075,7 +12081,7 @@ "Error de datos de volumen en %u:%u! Longitud de bloque %u es demente " "(demasiado grande), probablemente debido a un archivo malo.\n" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" @@ -12084,65 +12090,70 @@ "Error de datos de Volumen en %u:%u!\n" "Bloque checksum desajustado en bloque=%u len=%d: calc=%x blk=%x\n" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, fuzzy, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "No se pudo escribir bloque. Dispositivo en EOM.\n" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, fuzzy, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "Intento de escritura en volumen de sólo lectura.\n" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, fuzzy, c-format msgid "Attempt to write on closed device=%s\n" msgstr "Intento de escritura en volumen de sólo lectura.\n" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" "Capacidad máxima %s de volumen definido por el usuario superado en el " "dispositivo %s.\n" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "No se pudo escribir EOF. ERR=%s\n" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "Escribir cabecera de bloque cero.\n" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "Error de escritura en %u:%u en el dispositivo %s. ERR=%s.\n" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" "Fin de Volumen \"%s\" en %u:%u en el dispositivo %s. Escribió %u bytes " "obtuvo %d.\n" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "Fallo en retroceso de archivo desde EOT. ERR=%s\n" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "Fallo en retroceso de registro desde EOT. ERR=%s\n" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "Fallo en re-lectura del último bloque en EOT. ERR=%s" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" @@ -12152,7 +12163,7 @@ "Probable mala configuración de la cinta y pérdida de datos. Leer bloque=%u " "Espera bloque=%u.\n" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" @@ -12161,11 +12172,11 @@ "Re-lectura del último bloque OK, pero número de bloque difieren. Leer bloque=" "%u Espera bloque=%u.\n" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "Éxito en re-lectura del último bloque.\n" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" @@ -12174,7 +12185,7 @@ "Error al escribir EOF final a la cinta. Este volumen puede no ser legible.\n" "%s" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" @@ -12183,7 +12194,7 @@ "Error al escribir la parte final a DVD. Este volumen puede no ser legible.\n" "%s" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " @@ -12192,12 +12203,12 @@ "Error al escribir, número de parte actual es menor que el número total de " "partes (%d/%d, dispositivo=%s)\n" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "No se puede abrir próxima parte %s del dispositivo: ERR=%s\n" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " @@ -12206,7 +12217,7 @@ "Fin de Volumen \"%s\" en %u:%u en el dispositivo %s (part_size=%s, " "free_space=%s, free_space_errno=%d, errmsg=%s).\n" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " @@ -12215,46 +12226,46 @@ "Fin de Volumen \"%s\" en %u:%u en el dispositivo %s (part_size=%s, " "free_space=%s, free_space_errno=%d).\n" -#: src/stored/block.c:944 +#: src/stored/block.c:960 #, fuzzy msgid "Job failed or canceled.\n" msgstr "Job %d cancelado.\n" -#: src/stored/block.c:950 +#: src/stored/block.c:966 #, fuzzy msgid "Attempt to read past end of tape or file.\n" msgstr "Intento de leer sesión no abierta.\n" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, fuzzy, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" "Error de lectura en fd=%d desde archivo:blk %u:%u en el dispositivo %s. ERR=" "%s.\n" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "Problema de tamaño de búfer del bloque en el dispositivo %s\n" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "No se puede abrir el dispositivo parte =%d %s: ERR=%s\n" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" "Error de lectura en fd=%d desde archivo:blk %u:%u en el dispositivo %s. ERR=" "%s.\n" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "Leer cero bytes en %u:%u en el dispositivo %s.\n" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " @@ -12263,18 +12274,18 @@ "Error datos de volumen en %u:%u! Bloque muy corto de %d bytes en " "dispositivo %s descartado.\n" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" "Longitud del bloque %u es mayor que el buffer %u. Intentando recuperación.\n" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "Configurando tamaño del bufer del bloque para %u bytes.\n" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -12498,57 +12509,57 @@ msgid "No input string given.\n" msgstr "Especificación de archivo no dado.\n" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "rwl_writeunlock llamado muchas veces.\n" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "rwl_writeunlock por no-propietario.\n" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "Hilo %d encontró elementos sin cambios %d veces\n" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "%02d: intervalo %d, escritos %d, leídos %d\n" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "datos %02d: valor %d, %d escritos\n" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "Total: %d hilos escritos, %d datos escritos\n" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "Intente escribir bloqueo" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "Intente leer bloqueo" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "Crear hilo" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "Unir hilo" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" "%02d: intervalo %d, actualizados %d, r_collisions %d, w_collisions %d\n" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "datos %02d: valor %d, %d actualizados\n" @@ -12581,111 +12592,105 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "fallo gethostbyname() para la maquina \"%s\": ERR=%s\n" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "Error al abrir socket. proto=%d puerto=%d. ERR=%s\n" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "Error al enlazar dirección de origen. proto=%d. ERR=%s\n" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "No se puede establecer SO_KEEPALIVE en el socket: %s\n" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, fuzzy, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "No se puede establecer SO_KEEPIDLE en el socket: %s\n" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "No se pudo iniciar bsock mutex. ERR=%s\n" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "Error de escritura enviando %d bytes para %s:%s:%d: ERR=%s\n" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "Escribió %d bytes para %s:%s:%d, pero solo %d aceptado.\n" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "Esperaba leer %d obtuvo %d desde %s:%s:%d\n" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "Tamaño de paquete muy grande de \"%s:%s:%d. Conexión de terminación.\n" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "Error de lectura desde %s:%s:%d: ERR=%s\n" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 msgid "fread attr spool I/O error.\n" msgstr "Error fread attr spool I/O.\n" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "No se pudo malloc datos BSOCK buffer.\n" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "error de sockopt: %s\n" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "Alerta, búfer de red=%d bytes no tamaño máximo.\n" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" -"Tamaño del buffer de red %d no múltiplo del tamaño de bloque de cinta.\n" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "error F_GETFL fcntl. ERR=%s\n" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "error F_SETFL fcntl. ERR=%s\n" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "Problema de autorización de Director en \"%s:%d\"\n" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " @@ -12694,7 +12699,7 @@ "Problema de autorización: El servidor remoto en \"%s:%d\" no anuncio soporte " "TLS requiere.\n" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " @@ -12703,12 +12708,12 @@ "Problema de autorización con el Director en \"%s:%d\": El servidor remoto " "requiere TLS.\n" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "Fallo negociación TLS no con el Director en \"%s:%d\"\n" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" @@ -12717,12 +12722,12 @@ "Mala respuesta al comando Hello: ERR=%s\n" "El director en \"%s:%d\" probablemente no esta corriendo.\n" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "Director en \"%s:%d\" rechazó comando Hello\n" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, fuzzy, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -12873,51 +12878,51 @@ msgid "%s JobId %u: Security violation: " msgstr "%s JobId %u: Violación de seguridad: " -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "No se puede abrir el socket de flujo. ERR=%s. Actual %s Todos %s\n" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "No se puede establecer SO_REUSEADDR en el socket: %s\n" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "No se puede enlazar a puerto %d: ERR=%s: Reintentando ...\n" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "No se puede enlazar a puerto %d: ERR=%s.\n" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "No se pudo iniciar cola cliente: ERR=%s\n" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "Error al seleccionar: %s\n" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "Conexión desde %s:%d rechazada por hosts.access\n" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "No es posible crear cliente BSOCK. \n" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "No se pudo agregar job a la cola de cliente: ERR=%s\n" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "No es posible destruir la cola de cliente: ERR=%s\n" @@ -13917,7 +13922,7 @@ msgid "Unknown error." msgstr "Error desconocido." -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "Sig desconocido %d" @@ -15077,7 +15082,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "Plugin=%s no encontrado.\n" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "Opción incluir/excluir desconocida: %c\n" @@ -15210,7 +15215,7 @@ msgstr "Mas de un Path!: %s para path: %s\n" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -15270,7 +15275,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "ERR=JobIds están vacíos\n" @@ -15381,66 +15386,66 @@ msgid "Client record not found in Catalog.\n" msgstr "Registro de cliente no encontrado en catalogo.\n" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "Mas de un Contador!: %d\n" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "error al obtener fila Contador: %s\n" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "registro Contador: %s no encontrado en Catalogo.\n" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "Error al obtener %s FileSets pero se esperaba sólo uno!\n" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "Registro FileSet \"%s\" no encontrado.\n" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "Registro FileSet no encontrado en Catalogo.\n" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "Fallo al seleccionar ID del Medio: ERR=%s\n" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, c-format msgid "query dbids failed: ERR=%s\n" msgstr "Consulta fallida a dbids: ERR=%s\n" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "Mas de un Volumen!: %s\n" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "Registro Media MediaID=%s no encontrado.\n" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "Registro Media para Volumen \"%s\" no encontrado.\n" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "Registro Media para MediaId=%u no encontrado en el Catalogo.\n" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "Registro Media para Volumen=%s no encontrado en el Catalogo.\n" @@ -15517,9 +15522,9 @@ msgid "unknown" msgstr "desconocido" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "Consulta fallida: %s: ERR=%s\n" @@ -15544,7 +15549,7 @@ "No se puede conectar al servidor MySQL.\n" "Base de Datos=%s Usuario=%s\n" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 #, fuzzy msgid "A user name for Ingres must be supplied.\n" msgstr "Un nombre de usuario para DBI debe ser suministrado.\n" @@ -15640,41 +15645,41 @@ "Base de datos=%s Usuario=%s\n" ", probablemente no funciona o tu contraseña es incorrecta.\n" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "PQescapeStringConn devuelto no-cero.\n" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 #, fuzzy msgid "PQescapeByteaConn returned NULL.\n" msgstr "PQescapeStringConn devuelto no-cero.\n" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 #, fuzzy msgid "PQunescapeByteaConn returned NULL.\n" msgstr "PQescapeStringConn devuelto no-cero.\n" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "error al obtener el valor: %s\n" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, c-format msgid "error starting batch mode: %s" msgstr "Error iniciando modo batch: %s" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, c-format msgid "error ending batch mode: %s" msgstr "Error finalizando modo batch: %s" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, c-format msgid "error copying in batch mode: %s" msgstr "Error copiando en modo batch: %s" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "Un nombre de usuario para PostgreSQL debe de ser suministrado.\n" @@ -15716,20 +15721,20 @@ "Tipo=%s Base de Datos=%s Usuario=%s\n" "Probablemente no este ejecutando o su contraseña es incorrecta.\n" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, c-format msgid "error inserting batch mode: %s" msgstr "Error insertando en modo batch: %s" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 msgid "Driver type not specified in Catalog resource.\n" msgstr "Tipo de controlador no especificado en los recursos de Catálogo.\n" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "Tipo de controlador no válido, debe ser \"dbi:<tipo>\"\n" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 msgid "A user name for DBI must be supplied.\n" msgstr "Un nombre de usuario para DBI debe ser suministrado.\n" @@ -15763,7 +15768,7 @@ "No se puede conectar al servidor MySQL.\n" "Base de Datos=%s Usuario=%s\n" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "Un nombre de usuario para MySQL debe de ser suministrado.\n" @@ -15909,12 +15914,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "Debe de introducir un numero entre 1 y %d\n" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "Fallo al inicializar el contexto TLS para la consola \"%s\".\n" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "Fallo al inicializar el contexto TLS para el Director \"%s\".\n" @@ -17126,10 +17131,10 @@ msgstr "Bacula Cliente: Ultimo Job con Advertencias" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "Error de red al enviar para SD. ERR=%s\n" @@ -17401,7 +17406,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "Fallo al restablecer atributos extendidos en el archivo \"%s\"\n" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, fuzzy, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "No se puede abrir el archivo \"%s\": ERR=%s\n" @@ -17578,24 +17583,24 @@ msgid "No Director resource defined in %s\n" msgstr "Recurso Director no definido en %s\n" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, fuzzy, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "error de acl_get en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, fuzzy, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "" "codificación errónea del tipo de ACL en el flujo de ACL en el archivo \"%s" "\" \n" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, fuzzy, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "No se puede convertir acl de texto en el archivo \"%s\"\n" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, fuzzy, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " @@ -17604,7 +17609,7 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl\n" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, fuzzy, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " @@ -17613,64 +17618,64 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl\n" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, fuzzy, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "error de acl_set en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, fuzzy, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "error de acl_get en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "acl_to_text error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "error de acl_get_file en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, fuzzy, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "acl_delete_def_file error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "acl_delete_def_file error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "acl_from_text error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "error de acl_valid en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, fuzzy, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "acl_set_file error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "acl_set_file error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "error de pathconf en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, fuzzy, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" @@ -17678,39 +17683,39 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl\n" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "error de getacl en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "altostr error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "strtoacl error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, fuzzy, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl\n" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "setacl error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "error de acl_get en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" @@ -17718,7 +17723,7 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl\n" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, fuzzy, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " @@ -17727,7 +17732,7 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl aclent\n" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, fuzzy, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " @@ -17736,39 +17741,49 @@ "Tratando de restaurar acl en el archivo \"%s\" en sistema de ficheros sin " "soporte a acl ace\n" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "error de acl_fromtext en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" "codificación errónea del tipo de ACL en el flujo de ACL en el archivo \"%s" "\" \n" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "error de acl_set en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "acltotext error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "aclfromtext error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "acl(SETACL) error en el archivo \"%s\": ERR=%s\n" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, fuzzy, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "acl(SETACL) error en el archivo \"%s\": ERR=%s\n" + +#: src/filed/acl.c:2148 +#, fuzzy, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "acl(SETACL) error en el archivo \"%s\": ERR=%s\n" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -17923,34 +17938,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "Error de compresión DeflateReset: %d\n" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, fuzzy, c-format msgid "Compression LZO error: %d\n" msgstr "Error de compresión Deflate: %d\n" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "Error de cifrado\n" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "Error de lectura en el archivo %s. ERR=%s\n" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, fuzzy, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "Demasiados errores.\n" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "Error de relleno de cifrado\n" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "Invalidas banderas de archivo, tipo de flujo de datos no soportado.\n" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "VSS Writer (BackupComplete): %s\n" @@ -18169,106 +18184,106 @@ msgid "Failed to retrieve current UserName\n" msgstr "Fallo al recuperar UserName actual\n" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "2901 Job %s no encontrado.\n" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "2001 Job %s marcado para ser cancelado.\n" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "2902 Error escaneando comando cancelar.\n" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "2991 Comando setdebug malo: %s\n" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "Malo comando estimate: %s" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "2992 Malo comando estimación.\n" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "Malo Comando Job: %s" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "Malo comando RunBeforeJob: %s\n" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "2905 Malo comando RunBeforeJob.\n" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "2905 Malo comando RunBeforeNow.\n" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "Malo comando RunAfter: %s\n" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "2905 Malo comando RunAfterJob.\n" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "Malo comando RunScript: %s\n" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "2905 Malo comando RunScript.\n" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, fuzzy, c-format msgid "Bad RestoreObject command: %s\n" msgstr "Malo comando storage: %s" -#: src/filed/job.c:789 +#: src/filed/job.c:785 #, fuzzy msgid "2909 Bad RestoreObject command.\n" msgstr "2905 Malo comando RunBeforeJob.\n" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, fuzzy, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "Directorio de Plugin no definido. No se puede usar plug-in: \"%\"\n" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "Error al ejecutar el programa: %s. stat=%d: ERR=%s\n" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "No se puede abrir archivo de entrada FileSet: %s. ERR=%s\n" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "Error de compilación REGEX %s. ERR=%s\n" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "Comando FilseSet invalido: %s\n" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" @@ -18276,147 +18291,147 @@ "Relojes de DIR y FD difieren por %lld segundos, FD compensando " "automáticamente.\n" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "Nivel de copia de seguridad desconocido: %s\n" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "Malo comando nivel: %s\n" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "Malo comando sesión: %s" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "Malo comando storage: %s" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "Error al conectar con el demonio de Storage: %s:%d\n" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "Fallo al autenticar demonio Storage.\n" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "Soporte ACL no configurado para su máquina. \n" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "Soporte XATTR no está configurado para su máquina.\n" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "No puede contactar demonio Storage\n" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "Mala respuesta para añadir abierto: %s\n" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "Mala respuesta desde almacén para comando abrir\n" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "Generar instantáneas(snapshots) VSS. Driver=\"%s\", Drive(s)=\"%s\"\n" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, fuzzy, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "Fallo al generar VSS snapshots.\n" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, fuzzy, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "Fallo al generar VSS snapshots.\n" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "VSS Writer (PrepareForBackup): %s\n" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" "No encuentra las letras de unidad para la generación de instantáneas" "(snapshots) VSS.\n" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, fuzzy, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "" "VSS no se inicializo correctamente. Suporte VSS está desactivado. ERR=%s\n" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "Añadir Cierre con SD fallido.\n" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "Mal estado %d regresado desde demonio Storage.\n" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "2994 Malo comando verificar: %s\n" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "2994 Malo nivel de verificar: %s\n" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "Comando replace malo. CMD=%s\n" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "Mala regexp where. where=%s\n" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" "VSS no se inicializo correctamente. Suporte VSS está desactivado. ERR=%s\n" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, fuzzy, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "VSS Writer (BackupComplete): %s\n" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "Secuencia de llamada impropia.\n" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "Mala respuesta para SD leer abrir: %s\n" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "Mala respuesta desde storage para comando leer abir\n" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "Error de comunicación con SD. Mala respuesta a %s. ERR=%s\n" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "Mala respuesta al comando %s. Esperaba %s, obtuvo %s\n" @@ -18636,12 +18651,12 @@ " -? imprimir este mensaje.\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "Ya conectado\"%s\".\n" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" @@ -18650,35 +18665,35 @@ "Conectando con Director %s:%d\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "Inicializando ..." -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "Conectado" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "Comando completado ..." -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "Procesando comando ..." -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "En prompt principal esperando por una entrada..." -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "En prompt esperando por una entrada..." -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "Comando fallido." -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "Director desconectado." @@ -18713,6 +18728,10 @@ " -? imprimir este mensaje.\n" "\n" +#~ msgid "Network buffer size %d not multiple of tape block size.\n" +#~ msgstr "" +#~ "Tamaño del buffer de red %d no múltiplo del tamaño de bloque de cinta.\n" + #, fuzzy #~ msgid "Attempt to set StorageId to zero.\n" #~ msgstr "Intento de abrir sesión ya abierta.\n" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/fr.po ^ |
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Bacula 1.38\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2009-10-18 14:04+0000\n" "Last-Translator: Eric Bollengier <eric@eb.homelinux.org>\n" "Language-Team: French <bacula-devel-fr@lists.sourceforge.net>\n" @@ -778,7 +778,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -2114,11 +2114,11 @@ msgid "No job specified.\n" msgstr "Pas de job sélectionné.\n" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "Erreur pendant l'envoi de la liste d'inclusion.\n" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "Erreur pendant l'envoi de la liste d'exclusion.\n" @@ -3312,14 +3312,21 @@ "Attention, le storage par défaut est remplacé par \"%s\" en ligne de " "commande.\n" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, fuzzy, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" +"Le Storage \"%s\" est introuvable, utilisation du Storage \"%s\" du " +"MediaType \"%s\".\n" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" "Le Storage \"%s\" est introuvable, utilisation du Storage \"%s\" du " "MediaType \"%s\".\n" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3383,7 +3390,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "Impossible de lancer la commande : %s. ERR=%s\n" @@ -3427,8 +3434,8 @@ msgstr "" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "" @@ -5395,7 +5402,7 @@ "Impossible d'ouvrir le fichier bootstrap (WriteBootstrap) :\n" "%s : ERR=%s\n" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "Impossible d'ouvrir le fichier bootstrap %s : ERR=%s\n" @@ -6282,13 +6289,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, fuzzy, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "Erreur pendant l'écriture des attributs dans le spool. ERR=%s\n" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "" @@ -6633,14 +6640,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, fuzzy, c-format msgid "Connecting to Director %s:%d" msgstr "Connexion au Director %s:%d\n" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 #, fuzzy msgid "Director daemon" msgstr "Director" @@ -7323,7 +7330,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "Impossible de créer le fichier bootstrap %s : ERR=%s\n" @@ -8662,8 +8669,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "Impossible de créer un JobMedia en base pour le Volume=%s Job=%s\n" @@ -8790,11 +8797,11 @@ msgid "unknown: %d" msgstr "" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8958,7 +8965,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -11674,193 +11681,198 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, fuzzy, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "Impossible d'écrire un bloc. Le Device est au bout EOM.\n" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "Impossible d'écrire le marqueur EOF. ERR=%s\n" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "Erreur d'écriture à %u:%u sur le device %s. ERR=%s\n" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" "Fin du volume \"%s\" à %u:%u sur le device %s. Ecriture de %u octets, eu " "%d.\n" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "Erreur sur la re-lecture du dernier bloc en EOT. ERR=%s" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "La re-lecture du dernier bloc écrit a réussi.\n" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 #, fuzzy msgid "Job failed or canceled.\n" msgstr "Le job %d est annulé.\n" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, fuzzy, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "3910 Impossible d'ouvrir le device %s : ERR=%s\n" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -12076,56 +12088,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -12158,145 +12170,138 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "Impossible de supprimer le volume \"%s\". ERR=%s" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "Ouverture de la socket en erreur. proto=%d port=%d. ERR=%s\n" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, fuzzy, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "Ouverture de la socket en erreur. proto=%d port=%d. ERR=%s\n" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "Impossible de positionner SO_KEEPALIVE sur la socket : %s\n" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, fuzzy, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "Impossible de positionner SO_KEEPALIVE sur la socket : %s\n" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, fuzzy, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "Impossible d'initialiser la queue cliente : ERR=%s\n" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, fuzzy, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "Erreur de lecture de %s:%s:%d : ERR=%s\n" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "Attendait %d en lecture, eu %d de %s:%s:%d\n" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "Erreur de lecture de %s:%s:%d : ERR=%s\n" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 #, fuzzy msgid "fread attr spool I/O error.\n" msgstr "Erreur pendant l'écriture des attributs dans le spool. ERR=%s\n" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 #, fuzzy msgid "Could not malloc BSOCK data buffer\n" msgstr "Impossible d'ouvrir la base de données \"%s\".\n" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "erreur sockopt : %s\n" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" -"La taille du buffer réseau %d n'est pas un multiple de la taille de bloc du " -"lecteur.\n" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, fuzzy, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "erreur de fermeture : ERR=%s\n" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, fuzzy, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "erreur de fermeture : ERR=%s\n" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, fuzzy, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "Pas d'enregistrement trouvé en base pour : %s\n" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " "TLS support.\n" msgstr "" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " "TLS.\n" msgstr "" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, fuzzy, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "Négociation TLS échouée avec le SD « %s:%d ».\n" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, fuzzy, c-format msgid "" "Bad response to Hello command: ERR=%s\n" "The Director at \"%s:%d\" is probably not running.\n" msgstr "Mauvaise réponse à la commande Hello : ERR=%s\n" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, fuzzy, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "Le File Daemon « %s:%d » a rejeté la commande Hello\n" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, fuzzy, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -12448,51 +12453,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "Impossible de positionner l'option SO_REUSEADDR sur la socket : %s\n" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "Impossible de s'attacher au port %d : ERR=%s : Réessaie...\n" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "Impossible de s'attacher au port %d : ERR=%s.\n" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "Impossible d'initialiser la queue cliente : ERR=%s\n" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "Erreur sur le select : %s\n" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "Connexion depuis %s:%d refusée par hosts.access\n" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "Impossible de créer la structure BSOCK cliente.\n" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "Impossible d'ajouter le job à la queue cliente : ERR=%s\n" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "Impossible de détruire la queue cliente : ERR=%s\n" @@ -13489,7 +13494,7 @@ msgid "Unknown error." msgstr "Erreur inconnue." -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "sig inconnu %d" @@ -14624,7 +14629,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "Plugin=%s non trouvé.\n" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "" @@ -14755,7 +14760,7 @@ msgstr "" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -14815,7 +14820,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14926,66 +14931,66 @@ msgid "Client record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, fuzzy, c-format msgid "query dbids failed: ERR=%s\n" msgstr "fopen %s en erreur : ERR=%s\n" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "" @@ -15058,9 +15063,9 @@ msgid "unknown" msgstr "inconnu" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "" @@ -15086,7 +15091,7 @@ "Base=%s Utilisateur=%s\n" "Le serveur n'est pas démarré ou bien votre password est invalide.\n" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 #, fuzzy msgid "A user name for Ingres must be supplied.\n" msgstr "Un nom d'utilisateur MySQL doit être fourni.\n" @@ -15172,39 +15177,39 @@ "Base=%s Utilisateur=%s\n" "Le serveur n'est pas démarré ou bien votre password est invalide.\n" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, fuzzy, c-format msgid "error starting batch mode: %s" msgstr "erreur en terminant le mode batch: %s\n" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, fuzzy, c-format msgid "error ending batch mode: %s" msgstr "erreur en terminant le mode batch: %s\n" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, fuzzy, c-format msgid "error copying in batch mode: %s" msgstr "erreur en terminant le mode batch: %s\n" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "Un nom d'utilisateur PostgreSQL doit être fourni.\n" @@ -15244,22 +15249,22 @@ "Base=%s Utilisateur=%s\n" "Le serveur n'est pas démarré ou bien votre password est invalide.\n" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, fuzzy, c-format msgid "error inserting batch mode: %s" msgstr "erreur en terminant le mode batch: %s\n" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 #, fuzzy msgid "Driver type not specified in Catalog resource.\n" msgstr "Impossible de trouver un Catalogue\n" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 #, fuzzy msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "Saisie invalide. Veuillez répondre oui ou non.\n" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 #, fuzzy msgid "A user name for DBI must be supplied.\n" msgstr "Un nom d'utilisateur MySQL doit être fourni.\n" @@ -15295,7 +15300,7 @@ "Base=%s Utilisateur=%s\n" "Le serveur n'est pas démarré ou bien votre password est invalide.\n" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "Un nom d'utilisateur MySQL doit être fourni.\n" @@ -15445,12 +15450,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "Vous devez saisir un nombre entre 1 et %d\n" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "Impossible d'initialiser le contexte TLS pour la Console \"%s\".\n" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "Impossible d'initialiser le contexte TLS pour le Director \"%s\".\n" @@ -16546,10 +16551,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -16811,7 +16816,7 @@ msgstr "" "Impossible de se positionner à la fin du média sur le device %s : ERR=%s\n" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, fuzzy, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "3910 Impossible d'ouvrir le device %s : ERR=%s\n" @@ -16972,56 +16977,56 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, fuzzy, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, fuzzy, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "Impossible de créer le fichier bootstrap %s. ERR=%s\n" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, fuzzy, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "Impossible de lire le certificat à partir du fichier" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, fuzzy, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, fuzzy, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, fuzzy, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, fuzzy, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, fuzzy, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" @@ -17029,126 +17034,136 @@ "Impossible de récupérer les informations du Media pour le Volume %s : ERR=" "%s\n" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, fuzzy, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" "Impossible de récupérer les informations du Media pour le Volume %s : ERR=" "%s\n" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, fuzzy, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, fuzzy, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, fuzzy, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, fuzzy, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, fuzzy, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, fuzzy, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, fuzzy, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, fuzzy, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, fuzzy, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, fuzzy, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, fuzzy, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, fuzzy, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, fuzzy, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, fuzzy, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, fuzzy, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, fuzzy, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, fuzzy, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, fuzzy, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" + +#: src/filed/acl.c:2148 +#, fuzzy, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "Impossible d'ouvrir le fichier %s : ERR=%s\n" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -17302,34 +17317,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, fuzzy, c-format msgid "Compression LZO error: %d\n" msgstr "Erreur de décompression. ERR=%d\n" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -17540,106 +17555,106 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "2901 Le job %s est introuvable.\n" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "2001 Le job %s va être annulé.\n" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "2902 Erreur dans le décodage de la commande d'annulation.\n" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "2991 Erreur dans la commande setdebug : %s\n" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "Erreur dans la commande RunScript : %s\n" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "2905 Erreur sur la commande RunScript.\n" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, fuzzy, c-format msgid "Bad RestoreObject command: %s\n" msgstr "Erreur dans la commande RunScript : %s\n" -#: src/filed/job.c:789 +#: src/filed/job.c:785 #, fuzzy msgid "2909 Bad RestoreObject command.\n" msgstr "2905 Erreur sur la commande RunScript.\n" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "Erreur dans l'exécution de la commande : %s. stat=%d: ERR=%s\n" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, fuzzy, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" @@ -17647,143 +17662,143 @@ "L'horloge du client et du director ont %d secondes d'écart, le client s'est " "ajusté automatiquement.\n" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "Impossible de se connecter au démon Storage\n" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "Création des snapshot VSS. Driver=\"%s\", Lecteur(s)=\"%s\"\n" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, fuzzy, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "Erreur durant la création des snapshots VSS.\n" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, fuzzy, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "Erreur durant la création des snapshots VSS.\n" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, fuzzy, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "Impossible d'initialiser le verrou sur la base. ERR=%s\n" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -18000,50 +18015,50 @@ " -t test - lecture de la configuration et sortie\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, fuzzy, c-format msgid "Already connected\"%s\".\n" msgstr "Console connecté à %s\n" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, fuzzy, c-format msgid "" "Connecting to Director %s:%d\n" "\n" msgstr "Connexion au Director %s:%d\n" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 #, fuzzy msgid "Connected" msgstr "Connexion...\n" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 #, fuzzy msgid "Command completed ..." msgstr "Commande annulée.\n" -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 #, fuzzy msgid "Command failed." msgstr "Commande annulée.\n" -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 #, fuzzy msgid "Director disconnected." msgstr "Connexion du director le %s\n" @@ -18076,6 +18091,11 @@ " -t test - lecture de la configuration et sortie\n" "\n" +#~ msgid "Network buffer size %d not multiple of tape block size.\n" +#~ msgstr "" +#~ "La taille du buffer réseau %d n'est pas un multiple de la taille de bloc " +#~ "du lecteur.\n" + #, fuzzy #~ msgid "Config file editor" #~ msgstr "La création de la signature a échouée" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/nl.po ^ |
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Bacula 5.2.7\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2012-05-05 11:52+0100\n" "Last-Translator: W. van den Akker <wvdakker@wilsoft.nl>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -732,12 +732,12 @@ msgstr "" #: src/dird/dird.c:112 -#, c-format +#, fuzzy, c-format msgid "" "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -752,6 +752,16 @@ " -? print this message.\n" "\n" msgstr "" +"\n" +"Versie: %s (%s) %s %s %s\n" +"\n" +"Specificatie: tray-monitor [-c configuratiebestand] [-d debug_level]\n" +" -c <file> gebruik configuratiebestand\n" +" -d <nn> instellen debug level op <nn>\n" +" -dt weergeven tijd in debug output\n" +" -t test - lees configuratie en stop\n" +" -? geef deze melding.\n" +"\n" #: src/dird/dird.c:258 src/stored/stored.c:227 src/console/console.c:1109 #: src/filed/filed.c:218 src/qt-console/main.cpp:165 @@ -1955,11 +1965,11 @@ msgid "No job specified.\n" msgstr "" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "" @@ -3085,12 +3095,17 @@ msgid "Warning default storage overridden by \"%s\" on command line.\n" msgstr "" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3152,7 +3167,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "" @@ -3195,8 +3210,8 @@ msgstr "" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "" @@ -4983,7 +4998,7 @@ "%s: ERR=%s\n" msgstr "" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "" @@ -5805,13 +5820,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "" @@ -6127,14 +6142,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "" @@ -6758,7 +6773,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "" @@ -8035,8 +8050,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "" @@ -8144,11 +8159,11 @@ msgid "unknown: %d" msgstr "" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8303,7 +8318,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -10907,191 +10922,196 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 #, fuzzy msgid "Job failed or canceled.\n" msgstr "Terugzetten geannuleerd.\n" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -11304,56 +11324,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -11384,141 +11404,136 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 msgid "fread attr spool I/O error.\n" msgstr "" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " "TLS support.\n" msgstr "" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " "TLS.\n" msgstr "" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" "The Director at \"%s:%d\" is probably not running.\n" msgstr "" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -11657,51 +11672,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "" @@ -12673,7 +12688,7 @@ msgid "Unknown error." msgstr "" -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "" @@ -13792,7 +13807,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "" @@ -13923,7 +13938,7 @@ msgstr "" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -13983,7 +13998,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14094,66 +14109,66 @@ msgid "Client record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, c-format msgid "query dbids failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "" @@ -14226,9 +14241,9 @@ msgid "unknown" msgstr "" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "" @@ -14249,7 +14264,7 @@ "It is probably not running or your password is incorrect.\n" msgstr "" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 msgid "A user name for Ingres must be supplied.\n" msgstr "" @@ -14330,39 +14345,39 @@ "exceeded.\n" msgstr "" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, c-format msgid "error starting batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, c-format msgid "error ending batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, c-format msgid "error copying in batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "" @@ -14399,20 +14414,20 @@ "exceeded.\n" msgstr "" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, c-format msgid "error inserting batch mode: %s" msgstr "" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 msgid "Driver type not specified in Catalog resource.\n" msgstr "" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 msgid "A user name for DBI must be supplied.\n" msgstr "" @@ -14444,7 +14459,7 @@ "incorrect.\n" msgstr "" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "" @@ -14581,12 +14596,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "" @@ -15611,10 +15626,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -15874,7 +15889,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "" @@ -16018,179 +16033,189 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, fuzzy, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "Lees fout op bestand %s. FOUT=%s\n" + +#: src/filed/acl.c:2148 +#, fuzzy, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "Lees fout op bestand %s. FOUT=%s\n" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -16342,34 +16367,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, c-format msgid "Compression LZO error: %d\n" msgstr "Compressie LZO fout: %d\n" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "Fout in versleuteling \n" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "Lees fout op bestand %s. FOUT=%s\n" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "Te veel fouten. OpdrachtFouten=%d.\n" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -16578,247 +16603,247 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, c-format msgid "Bad RestoreObject command: %s\n" msgstr "" -#: src/filed/job.c:789 +#: src/filed/job.c:785 msgid "2909 Bad RestoreObject command.\n" msgstr "" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" msgstr "" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -17025,12 +17050,12 @@ " -? geef deze melding.\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "Al verbonden\"%s\".\n" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" @@ -17039,35 +17064,35 @@ "Verbinden met Director %s:%d\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "Initialiseren ..." -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "Verbonden" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "Opdracht gereed ..." -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "Opdracht aan het uitvoeren ..." -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "Wacht op invoer op opdrachtregel in hoofdscherm ..." -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "Wacht op invoer op opdrachtregel ..." -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "Opdracht mislukt." -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "Director niet verbonden." @@ -17142,14 +17167,6 @@ #~ msgid "Unable to stat ControlDevice %s: ERR=%s\n" #~ msgstr "Kan job cond variabele niet initialiseren: ERR=%s\n" -#, fuzzy -#~ msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" -#~ msgstr "Lees fout op bestand %s. FOUT=%s\n" - -#, fuzzy -#~ msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" -#~ msgstr "Lees fout op bestand %s. FOUT=%s\n" - #~ msgid "" #~ "Copyright (C) 2005 Christian Masopust\n" #~ "Written by Christian Masopust (2005)\n" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/sv.po ^ |
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: Bacula 2.1.x\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2007-06-22 19:18+0200\n" "Last-Translator: Kern Sibbald <kern@bacula.org>\n" "Language-Team: Swedish <bacula-devel@lists.soureforge.net>\n" @@ -727,7 +727,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -1944,11 +1944,11 @@ msgid "No job specified.\n" msgstr "" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "" @@ -3074,12 +3074,17 @@ msgid "Warning default storage overridden by \"%s\" on command line.\n" msgstr "" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3141,7 +3146,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "" @@ -3184,8 +3189,8 @@ msgstr "" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "" @@ -4972,7 +4977,7 @@ "%s: ERR=%s\n" msgstr "" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "" @@ -5794,13 +5799,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "" @@ -6116,14 +6121,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "" @@ -6747,7 +6752,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "" @@ -8024,8 +8029,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "" @@ -8133,11 +8138,11 @@ msgid "unknown: %d" msgstr "" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8292,7 +8297,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -10896,190 +10901,195 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 msgid "Job failed or canceled.\n" msgstr "" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -11291,56 +11301,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -11371,141 +11381,136 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 msgid "fread attr spool I/O error.\n" msgstr "" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " "TLS support.\n" msgstr "" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " "TLS.\n" msgstr "" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" "The Director at \"%s:%d\" is probably not running.\n" msgstr "" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -11644,51 +11649,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "" @@ -12660,7 +12665,7 @@ msgid "Unknown error." msgstr "" -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "" @@ -13779,7 +13784,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "" @@ -13910,7 +13915,7 @@ msgstr "" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -13970,7 +13975,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14081,66 +14086,66 @@ msgid "Client record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, c-format msgid "query dbids failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "" @@ -14213,9 +14218,9 @@ msgid "unknown" msgstr "" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "" @@ -14236,7 +14241,7 @@ "It is probably not running or your password is incorrect.\n" msgstr "" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 msgid "A user name for Ingres must be supplied.\n" msgstr "" @@ -14317,39 +14322,39 @@ "exceeded.\n" msgstr "" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, c-format msgid "error starting batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, c-format msgid "error ending batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, c-format msgid "error copying in batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "" @@ -14386,20 +14391,20 @@ "exceeded.\n" msgstr "" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, c-format msgid "error inserting batch mode: %s" msgstr "" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 msgid "Driver type not specified in Catalog resource.\n" msgstr "" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 msgid "A user name for DBI must be supplied.\n" msgstr "" @@ -14431,7 +14436,7 @@ "incorrect.\n" msgstr "" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "" @@ -14568,12 +14573,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "" @@ -15598,10 +15603,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -15861,7 +15866,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "" @@ -16005,179 +16010,189 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "" + +#: src/filed/acl.c:2148 +#, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -16329,34 +16344,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, c-format msgid "Compression LZO error: %d\n" msgstr "" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -16565,247 +16580,247 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, c-format msgid "Bad RestoreObject command: %s\n" msgstr "" -#: src/filed/job.c:789 +#: src/filed/job.c:785 msgid "2909 Bad RestoreObject command.\n" msgstr "" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" msgstr "" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -16996,47 +17011,47 @@ "\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" "\n" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "" -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/po/uk.po ^ |
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: bacula 3.0.3\n" "Report-Msgid-Bugs-To: bacula-devel@lists.sourceforge.net\n" -"POT-Creation-Date: 2012-06-10 10:10+0200\n" +"POT-Creation-Date: 2012-06-27 15:41+0200\n" "PO-Revision-Date: 2010-01-08 17:32+0300\n" "Last-Translator: Vitaliy Kosharskiy <kisa_co@ukrpost.net>\n" "Language-Team: Ukrainian\n" @@ -731,7 +731,7 @@ "\n" "Version: %s (%s)\n" "\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -1973,11 +1973,11 @@ msgid "No job specified.\n" msgstr "" -#: src/dird/ua_cmds.c:1210 +#: src/dird/ua_cmds.c:1221 msgid "Error sending include list.\n" msgstr "" -#: src/dird/ua_cmds.c:1215 +#: src/dird/ua_cmds.c:1226 msgid "Error sending exclude list.\n" msgstr "" @@ -3103,12 +3103,17 @@ msgid "Warning default storage overridden by \"%s\" on command line.\n" msgstr "" -#: src/dird/ua_restore.c:1533 +#: src/dird/ua_restore.c:1534 +#, c-format +msgid "Using Storage \"%s\" from MediaType \"%s\".\n" +msgstr "" + +#: src/dird/ua_restore.c:1537 #, c-format msgid "Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n" msgstr "" -#: src/dird/ua_restore.c:1541 +#: src/dird/ua_restore.c:1546 #, c-format msgid "" "\n" @@ -3170,7 +3175,7 @@ "resource.\n" msgstr "" -#: src/dird/fd_cmds.c:500 src/filed/job.c:858 +#: src/dird/fd_cmds.c:500 src/filed/job.c:854 #, c-format msgid "Cannot run program: %s. ERR=%s\n" msgstr "" @@ -3213,8 +3218,8 @@ msgstr "" #: src/dird/fd_cmds.c:825 src/dird/fd_cmds.c:884 src/dird/catreq.c:443 -#: src/cats/sqlite.c:381 src/cats/ingres.c:458 src/cats/postgresql.c:448 -#: src/cats/dbi.c:559 src/cats/mysql.c:365 +#: src/cats/sqlite.c:387 src/cats/ingres.c:464 src/cats/postgresql.c:454 +#: src/cats/dbi.c:565 src/cats/mysql.c:371 #, c-format msgid "Attribute create error. %s" msgstr "" @@ -5002,7 +5007,7 @@ "%s: ERR=%s\n" msgstr "" -#: src/dird/restore.c:137 src/dird/msgchan.c:463 src/filed/job.c:2414 +#: src/dird/restore.c:137 src/dird/msgchan.c:463 #, c-format msgid "Could not open bootstrap file %s: ERR=%s\n" msgstr "" @@ -5826,13 +5831,13 @@ msgid "Invalid Catalog Update; DB not open: %s" msgstr "Помилка оновлення Каталогу: БД не відкрита: %s" -#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:622 +#: src/dird/catreq.c:671 src/dird/catreq.c:686 src/lib/bsock.c:637 #, c-format msgid "fread attr spool error. ERR=%s\n" msgstr "" #: src/dird/msgchan.c:106 src/tray-monitor/tray-monitor.c:952 -#: src/filed/job.c:1771 src/qt-console/tray-monitor/tray-monitor.cpp:375 +#: src/filed/job.c:1767 src/qt-console/tray-monitor/tray-monitor.cpp:375 msgid "Storage daemon" msgstr "Зберігач" @@ -6168,14 +6173,14 @@ #: src/tray-monitor/tray-monitor.c:937 #: src/qt-console/tray-monitor/tray-monitor.cpp:359 -#: src/qt-console/bcomm/dircomm.cpp:101 +#: src/qt-console/bcomm/dircomm.cpp:103 #, c-format msgid "Connecting to Director %s:%d" msgstr "Приєднуюсь до Керівника %s:%d" #: src/tray-monitor/tray-monitor.c:938 #: src/qt-console/tray-monitor/tray-monitor.cpp:361 -#: src/qt-console/bcomm/dircomm.cpp:171 +#: src/qt-console/bcomm/dircomm.cpp:173 msgid "Director daemon" msgstr "Керівник" @@ -6804,7 +6809,7 @@ msgid "3927 Error scanning release command: %s\n" msgstr "" -#: src/stored/dircmd.c:1034 src/filed/job.c:1531 +#: src/stored/dircmd.c:1034 src/filed/job.c:1527 #, c-format msgid "Could not create bootstrap file %s: ERR=%s\n" msgstr "" @@ -8081,8 +8086,8 @@ msgid "Could not ready device %s for append.\n" msgstr "" -#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:367 -#: src/stored/block.c:735 src/stored/block.c:811 +#: src/stored/acquire.c:515 src/stored/spool.c:321 src/stored/block.c:369 +#: src/stored/block.c:751 src/stored/block.c:827 #, c-format msgid "Could not create JobMedia record for Volume=\"%s\" Job=%s\n" msgstr "" @@ -8190,11 +8195,11 @@ msgid "unknown: %d" msgstr "" -#: src/stored/record.c:427 +#: src/stored/record.c:392 msgid "Damaged buffer\n" msgstr "" -#: src/stored/record.c:603 +#: src/stored/record.c:649 #, c-format msgid "Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n" msgstr "" @@ -8344,12 +8349,12 @@ msgstr "" #: src/stored/stored.c:87 -#, c-format +#, fuzzy, c-format msgid "" "\n" "Version: %s (%s)\n" "\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" @@ -8364,6 +8369,16 @@ " -? print this message.\n" "\n" msgstr "" +"\n" +"Версія: %s (%s) %s %s %s\n" +"\n" +"Використання: bat [-s] [-c config_file] [-d debug_level] [config_file]\n" +" -c <file> set configuration file to file\n" +" -dnn set debug level to nn\n" +" -s без сигналів\n" +" -t перевірка - прочитати конфігурацію і вийти\n" +" -? print this message.\n" +"\n" #: src/stored/stored.c:136 src/stored/btape.c:178 #, c-format @@ -10955,191 +10970,196 @@ msgid "%d block read errors not printed.\n" msgstr "" -#: src/stored/block.c:248 src/stored/block.c:264 src/stored/block.c:274 +#: src/stored/block.c:249 src/stored/block.c:265 src/stored/block.c:275 #, c-format msgid "" "Volume data error at %u:%u! Wanted ID: \"%s\", got \"%s\". Buffer " "discarded.\n" msgstr "" -#: src/stored/block.c:289 +#: src/stored/block.c:290 #, c-format msgid "" "Volume data error at %u:%u! Block length %u is insane (too large), probably " "due to a bad archive.\n" msgstr "" -#: src/stored/block.c:315 +#: src/stored/block.c:316 #, c-format msgid "" "Volume data error at %u:%u!\n" "Block checksum mismatch in block=%u len=%d: calc=%x blk=%x\n" msgstr "" -#: src/stored/block.c:431 +#: src/stored/block.c:433 #, c-format msgid "Cannot write block. Device at EOM. dev=%s\n" msgstr "" -#: src/stored/block.c:436 +#: src/stored/block.c:438 #, c-format msgid "Attempt to write on read-only Volume. dev=%s\n" msgstr "" -#: src/stored/block.c:441 +#: src/stored/block.c:443 #, c-format msgid "Attempt to write on closed device=%s\n" msgstr "" -#: src/stored/block.c:488 +#: src/stored/block.c:495 #, c-format msgid "User defined maximum volume capacity %s exceeded on device %s.\n" msgstr "" -#: src/stored/block.c:503 +#: src/stored/block.c:510 #, c-format msgid "Unable to write EOF. ERR=%s\n" msgstr "" -#: src/stored/block.c:529 src/stored/block.c:554 +#: src/stored/block.c:536 src/stored/block.c:570 msgid "Write block header zeroed.\n" msgstr "" -#: src/stored/block.c:573 +#: src/stored/block.c:562 +#, c-format +msgid "Block checksum changed during write: before=%ud after=%ud\n" +msgstr "" + +#: src/stored/block.c:589 #, c-format msgid "Write error at %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:580 +#: src/stored/block.c:596 #, c-format msgid "End of Volume \"%s\" at %u:%u on device %s. Write of %u bytes got %d.\n" msgstr "" -#: src/stored/block.c:661 src/stored/block.c:667 +#: src/stored/block.c:677 src/stored/block.c:683 #, c-format msgid "Backspace file at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:674 +#: src/stored/block.c:690 #, c-format msgid "Backspace record at EOT failed. ERR=%s\n" msgstr "" -#: src/stored/block.c:691 +#: src/stored/block.c:707 #, c-format msgid "Re-read last block at EOT failed. ERR=%s" msgstr "" -#: src/stored/block.c:701 +#: src/stored/block.c:717 #, c-format msgid "" "Re-read of last block: block numbers differ by more than one.\n" "Probable tape misconfiguration and data loss. Read block=%u Want block=%u.\n" msgstr "" -#: src/stored/block.c:706 +#: src/stored/block.c:722 #, c-format msgid "" "Re-read of last block OK, but block numbers differ. Read block=%u Want block=" "%u.\n" msgstr "" -#: src/stored/block.c:710 +#: src/stored/block.c:726 msgid "Re-read of last block succeeded.\n" msgstr "" -#: src/stored/block.c:742 +#: src/stored/block.c:758 #, c-format msgid "" "Error writing final EOF to tape. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:756 +#: src/stored/block.c:772 #, c-format msgid "" "Error writing final part to DVD. This Volume may not be readable.\n" "%s" msgstr "" -#: src/stored/block.c:860 +#: src/stored/block.c:876 #, c-format msgid "" "Error while writing, current part number is less than the total number of " "parts (%d/%d, device=%s)\n" msgstr "" -#: src/stored/block.c:868 +#: src/stored/block.c:884 #, c-format msgid "Unable to open device next part %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:888 +#: src/stored/block.c:904 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d, errmsg=%s).\n" msgstr "" -#: src/stored/block.c:901 +#: src/stored/block.c:917 #, c-format msgid "" "End of Volume \"%s\" at %u:%u on device %s (part_size=%s, free_space=%s, " "free_space_errno=%d).\n" msgstr "" -#: src/stored/block.c:944 +#: src/stored/block.c:960 #, fuzzy msgid "Job failed or canceled.\n" msgstr "Статус задачі: Відмінена" -#: src/stored/block.c:950 +#: src/stored/block.c:966 msgid "Attempt to read past end of tape or file.\n" msgstr "" -#: src/stored/block.c:959 +#: src/stored/block.c:975 #, c-format msgid "Attempt to read closed device: fd=%d at file:blk %u:%u on device %s\n" msgstr "" -#: src/stored/block.c:969 +#: src/stored/block.c:985 #, c-format msgid "Block buffer size looping problem on device %s\n" msgstr "" -#: src/stored/block.c:981 +#: src/stored/block.c:997 #, c-format msgid "Unable to open device part=%d %s: ERR=%s\n" msgstr "" -#: src/stored/block.c:1007 +#: src/stored/block.c:1023 #, c-format msgid "Read error on fd=%d at file:blk %u:%u on device %s. ERR=%s.\n" msgstr "" -#: src/stored/block.c:1020 +#: src/stored/block.c:1036 #, c-format msgid "Read zero bytes at %u:%u on device %s.\n" msgstr "" -#: src/stored/block.c:1044 +#: src/stored/block.c:1060 #, c-format msgid "" "Volume data error at %u:%u! Very short block of %d bytes on device %s " "discarded.\n" msgstr "" -#: src/stored/block.c:1069 +#: src/stored/block.c:1085 #, c-format msgid "Block length %u is greater than buffer %u. Attempting recovery.\n" msgstr "" -#: src/stored/block.c:1088 +#: src/stored/block.c:1104 #, c-format msgid "Setting block buffer size to %u bytes.\n" msgstr "" -#: src/stored/block.c:1103 +#: src/stored/block.c:1119 #, c-format msgid "" "Volume data error at %u:%u! Short block of %d bytes on device %s discarded.\n" @@ -11351,56 +11371,56 @@ msgid "No input string given.\n" msgstr "" -#: src/lib/rwlock.c:302 +#: src/lib/rwlock.c:307 msgid "rwl_writeunlock called too many times.\n" msgstr "" -#: src/lib/rwlock.c:307 +#: src/lib/rwlock.c:312 msgid "rwl_writeunlock by non-owner.\n" msgstr "" -#: src/lib/rwlock.c:432 src/lib/save/devlock.c:501 src/lib/devlock.c:501 +#: src/lib/rwlock.c:437 src/lib/save/devlock.c:501 src/lib/devlock.c:501 #, c-format msgid "Thread %d found unchanged elements %d times\n" msgstr "" -#: src/lib/rwlock.c:502 src/lib/save/devlock.c:571 src/lib/devlock.c:571 +#: src/lib/rwlock.c:507 src/lib/save/devlock.c:571 src/lib/devlock.c:571 #, c-format msgid "%02d: interval %d, writes %d, reads %d\n" msgstr "" -#: src/lib/rwlock.c:512 src/lib/save/devlock.c:581 src/lib/devlock.c:581 +#: src/lib/rwlock.c:517 src/lib/save/devlock.c:581 src/lib/devlock.c:581 #, c-format msgid "data %02d: value %d, %d writes\n" msgstr "" -#: src/lib/rwlock.c:517 src/lib/save/devlock.c:586 src/lib/devlock.c:586 +#: src/lib/rwlock.c:522 src/lib/save/devlock.c:586 src/lib/devlock.c:586 #, c-format msgid "Total: %d thread writes, %d data writes\n" msgstr "" -#: src/lib/rwlock.c:589 src/lib/save/devlock.c:658 src/lib/devlock.c:658 +#: src/lib/rwlock.c:594 src/lib/save/devlock.c:658 src/lib/devlock.c:658 msgid "Try write lock" msgstr "" -#: src/lib/rwlock.c:595 src/lib/save/devlock.c:664 src/lib/devlock.c:664 +#: src/lib/rwlock.c:600 src/lib/save/devlock.c:664 src/lib/devlock.c:664 msgid "Try read lock" msgstr "" -#: src/lib/rwlock.c:651 src/lib/save/devlock.c:720 src/lib/devlock.c:720 +#: src/lib/rwlock.c:656 src/lib/save/devlock.c:720 src/lib/devlock.c:720 msgid "Create thread" msgstr "" -#: src/lib/rwlock.c:661 src/lib/save/devlock.c:730 src/lib/devlock.c:730 +#: src/lib/rwlock.c:666 src/lib/save/devlock.c:730 src/lib/devlock.c:730 msgid "Join thread" msgstr "" -#: src/lib/rwlock.c:663 src/lib/save/devlock.c:732 src/lib/devlock.c:732 +#: src/lib/rwlock.c:668 src/lib/save/devlock.c:732 src/lib/devlock.c:732 #, c-format msgid "%02d: interval %d, updates %d, r_collisions %d, w_collisions %d\n" msgstr "" -#: src/lib/rwlock.c:675 src/lib/save/devlock.c:744 src/lib/devlock.c:744 +#: src/lib/rwlock.c:680 src/lib/save/devlock.c:744 src/lib/devlock.c:744 #, c-format msgid "data %02d: value %d, %d updates\n" msgstr "" @@ -11431,110 +11451,105 @@ msgid "bnet_host2ipaddrs() for host \"%s\" failed: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:237 +#: src/lib/bsock.c:252 #, c-format msgid "Socket open error. proto=%d port=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:250 +#: src/lib/bsock.c:265 #, c-format msgid "Source address bind error. proto=%d. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:261 src/lib/bsock.c:297 src/lib/bnet_server.c:201 +#: src/lib/bsock.c:276 src/lib/bsock.c:312 src/lib/bnet_server.c:218 #, c-format msgid "Cannot set SO_KEEPALIVE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:269 +#: src/lib/bsock.c:284 #, c-format msgid "Cannot set TCP_KEEPIDLE on socket: %s\n" msgstr "" -#: src/lib/bsock.c:316 +#: src/lib/bsock.c:331 #, c-format msgid "Could not init bsock mutex. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:351 +#: src/lib/bsock.c:366 #, c-format msgid "Socket has errors=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:358 +#: src/lib/bsock.c:373 #, c-format msgid "Socket is terminated=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:366 +#: src/lib/bsock.c:381 #, c-format msgid "Socket has insane msglen=%d on call to %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:404 +#: src/lib/bsock.c:419 #, c-format msgid "Write error sending %d bytes to %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:410 +#: src/lib/bsock.c:425 #, c-format msgid "Wrote %d bytes to %s:%s:%d, but only %d accepted.\n" msgstr "" -#: src/lib/bsock.c:499 src/lib/bsock.c:560 +#: src/lib/bsock.c:514 src/lib/bsock.c:575 #, c-format msgid "Read expected %d got %d from %s:%s:%d\n" msgstr "" -#: src/lib/bsock.c:519 +#: src/lib/bsock.c:534 #, c-format msgid "Packet size too big from \"%s:%s:%d. Terminating connection.\n" msgstr "" -#: src/lib/bsock.c:549 +#: src/lib/bsock.c:564 #, c-format msgid "Read error from %s:%s:%d: ERR=%s\n" msgstr "" -#: src/lib/bsock.c:640 +#: src/lib/bsock.c:655 msgid "fread attr spool I/O error.\n" msgstr "" -#: src/lib/bsock.c:701 +#: src/lib/bsock.c:716 msgid "Could not malloc BSOCK data buffer\n" msgstr "" -#: src/lib/bsock.c:719 src/lib/bsock.c:743 +#: src/lib/bsock.c:734 src/lib/bsock.c:753 #, c-format msgid "sockopt error: %s\n" msgstr "" -#: src/lib/bsock.c:725 src/lib/bsock.c:749 +#: src/lib/bsock.c:740 src/lib/bsock.c:759 #, c-format msgid "Warning network buffer = %d bytes not max size.\n" msgstr "" -#: src/lib/bsock.c:729 src/lib/bsock.c:753 -#, c-format -msgid "Network buffer size %d not multiple of tape block size.\n" -msgstr "" - -#: src/lib/bsock.c:774 src/lib/bsock.c:808 +#: src/lib/bsock.c:779 src/lib/bsock.c:813 #, c-format msgid "fcntl F_GETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:780 src/lib/bsock.c:814 src/lib/bsock.c:846 +#: src/lib/bsock.c:785 src/lib/bsock.c:819 src/lib/bsock.c:851 #, c-format msgid "fcntl F_SETFL error. ERR=%s\n" msgstr "" -#: src/lib/bsock.c:1019 src/qt-console/bcomm/dircomm_auth.cpp:112 +#: src/lib/bsock.c:1024 src/qt-console/bcomm/dircomm_auth.cpp:112 #, c-format msgid "Director authorization problem at \"%s:%d\"\n" msgstr "Проблеми авторизації Директора \"%s:%d\"\n" -#: src/lib/bsock.c:1026 src/qt-console/bcomm/dircomm_auth.cpp:119 +#: src/lib/bsock.c:1031 src/qt-console/bcomm/dircomm_auth.cpp:119 #, c-format msgid "" "Authorization problem: Remote server at \"%s:%d\" did not advertise required " @@ -11543,7 +11558,7 @@ "Проблеми авторизації: Віддалений сервер \"%s:%d\" не повідомляє про " "необхідність використання TLS.\n" -#: src/lib/bsock.c:1034 src/qt-console/bcomm/dircomm_auth.cpp:127 +#: src/lib/bsock.c:1039 src/qt-console/bcomm/dircomm_auth.cpp:127 #, c-format msgid "" "Authorization problem with Director at \"%s:%d\": Remote server requires " @@ -11551,12 +11566,12 @@ msgstr "" "Проблеми авторизації Керівника \"%s:%d\": Віддалений сепвер вимагає TLS.\n" -#: src/lib/bsock.c:1046 src/qt-console/bcomm/dircomm_auth.cpp:138 +#: src/lib/bsock.c:1051 src/qt-console/bcomm/dircomm_auth.cpp:138 #, c-format msgid "TLS negotiation failed with Director at \"%s:%d\"\n" msgstr "Встановлення TLS із Керівником невдале \"%s:%d\"\n" -#: src/lib/bsock.c:1056 src/qt-console/bcomm/dircomm_auth.cpp:150 +#: src/lib/bsock.c:1061 src/qt-console/bcomm/dircomm_auth.cpp:150 #, c-format msgid "" "Bad response to Hello command: ERR=%s\n" @@ -11565,12 +11580,12 @@ "Погана відповідь на команду Hello: ERR=%s\n" "Керівник \"%s:%d\" ймовірно не запущений.\n" -#: src/lib/bsock.c:1065 src/qt-console/bcomm/dircomm_auth.cpp:159 +#: src/lib/bsock.c:1070 src/qt-console/bcomm/dircomm_auth.cpp:159 #, c-format msgid "Director at \"%s:%d\" rejected Hello command\n" msgstr "Керівник \"%s:%d\" відкинув команду Hello\n" -#: src/lib/bsock.c:1075 src/qt-console/bcomm/dircomm_auth.cpp:171 +#: src/lib/bsock.c:1080 src/qt-console/bcomm/dircomm_auth.cpp:171 #, fuzzy, c-format msgid "" "Authorization problem with Director at \"%s:%d\"\n" @@ -11715,51 +11730,51 @@ msgid "%s JobId %u: Security violation: " msgstr "" -#: src/lib/bnet_server.c:108 +#: src/lib/bnet_server.c:125 #, c-format msgid "Cannot open stream socket. ERR=%s. Current %s All %s\n" msgstr "" -#: src/lib/bnet_server.c:121 +#: src/lib/bnet_server.c:138 #, c-format msgid "Cannot set SO_REUSEADDR on socket: %s\n" msgstr "" -#: src/lib/bnet_server.c:130 +#: src/lib/bnet_server.c:147 #, c-format msgid "Cannot bind port %d: ERR=%s: Retrying ...\n" msgstr "" -#: src/lib/bnet_server.c:135 +#: src/lib/bnet_server.c:152 #, c-format msgid "Cannot bind port %d: ERR=%s.\n" msgstr "" -#: src/lib/bnet_server.c:146 +#: src/lib/bnet_server.c:163 #, c-format msgid "Could not init client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:165 +#: src/lib/bnet_server.c:182 #, c-format msgid "Error in select: %s\n" msgstr "" -#: src/lib/bnet_server.c:186 +#: src/lib/bnet_server.c:203 #, c-format msgid "Connection from %s:%d refused by hosts.access\n" msgstr "" -#: src/lib/bnet_server.c:212 +#: src/lib/bnet_server.c:229 msgid "Could not create client BSOCK.\n" msgstr "" -#: src/lib/bnet_server.c:219 +#: src/lib/bnet_server.c:236 #, c-format msgid "Could not add job to client queue: ERR=%s\n" msgstr "" -#: src/lib/bnet_server.c:236 +#: src/lib/bnet_server.c:253 #, c-format msgid "Could not destroy client queue: ERR=%s\n" msgstr "" @@ -12731,7 +12746,7 @@ msgid "Unknown error." msgstr "" -#: src/lib/bnet.c:757 +#: src/lib/bnet.c:755 #, c-format msgid "Unknown sig %d" msgstr "" @@ -13869,7 +13884,7 @@ msgid "Plugin: \"%s\" not found.\n" msgstr "" -#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1456 +#: src/findlib/match.c:210 src/tools/testfind.c:654 src/filed/job.c:1452 #, c-format msgid "Unknown include/exclude option: %c\n" msgstr "Не зрозуміла опція параметру include/exclude: %c\n" @@ -14000,7 +14015,7 @@ msgstr "" #: src/cats/sql_create.c:595 src/cats/sql_get.c:205 src/cats/sql_get.c:258 -#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1041 +#: src/cats/sql_get.c:640 src/cats/sql_get.c:722 src/cats/sql_get.c:1039 #: src/cats/sql.c:340 src/cats/sql.c:347 src/cats/postgresql.c:165 #, c-format msgid "error fetching row: %s\n" @@ -14060,7 +14075,7 @@ msgid "Cannot Copy/Migrate job using BaseJob" msgstr "" -#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1138 +#: src/cats/sql_create.c:1165 src/cats/sql_get.c:1136 msgid "ERR=JobIds are empty\n" msgstr "" @@ -14171,66 +14186,66 @@ msgid "Client record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:767 +#: src/cats/sql_get.c:765 #, c-format msgid "More than one Counter!: %d\n" msgstr "" -#: src/cats/sql_get.c:772 +#: src/cats/sql_get.c:770 #, c-format msgid "error fetching Counter row: %s\n" msgstr "" -#: src/cats/sql_get.c:792 +#: src/cats/sql_get.c:790 #, c-format msgid "Counter record: %s not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:832 +#: src/cats/sql_get.c:830 #, c-format msgid "Error got %s FileSets but expected only one!\n" msgstr "" -#: src/cats/sql_get.c:837 +#: src/cats/sql_get.c:835 #, c-format msgid "FileSet record \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:847 +#: src/cats/sql_get.c:845 msgid "FileSet record not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:943 +#: src/cats/sql_get.c:941 #, c-format msgid "Media id select failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:981 +#: src/cats/sql_get.c:979 #, c-format msgid "query dbids failed: ERR=%s\n" msgstr "" -#: src/cats/sql_get.c:1036 +#: src/cats/sql_get.c:1034 #, c-format msgid "More than one Volume!: %s\n" msgstr "" -#: src/cats/sql_get.c:1092 +#: src/cats/sql_get.c:1090 #, c-format msgid "Media record MediaId=%s not found.\n" msgstr "" -#: src/cats/sql_get.c:1095 +#: src/cats/sql_get.c:1093 #, c-format msgid "Media record for Volume \"%s\" not found.\n" msgstr "" -#: src/cats/sql_get.c:1102 +#: src/cats/sql_get.c:1100 #, c-format msgid "Media record for MediaId=%u not found in Catalog.\n" msgstr "" -#: src/cats/sql_get.c:1105 +#: src/cats/sql_get.c:1103 #, c-format msgid "Media record for Vol=%s not found in Catalog.\n" msgstr "" @@ -14303,9 +14318,9 @@ msgid "unknown" msgstr "" -#: src/cats/sqlite.c:456 src/cats/ingres.c:490 src/cats/postgresql.c:500 -#: src/cats/postgresql.c:547 src/cats/dbi.c:625 src/cats/cats.c:149 -#: src/cats/mysql.c:387 +#: src/cats/sqlite.c:462 src/cats/ingres.c:496 src/cats/postgresql.c:506 +#: src/cats/postgresql.c:553 src/cats/dbi.c:631 src/cats/cats.c:149 +#: src/cats/mysql.c:393 #, c-format msgid "Query failed: %s: ERR=%s\n" msgstr "" @@ -14326,7 +14341,7 @@ "It is probably not running or your password is incorrect.\n" msgstr "" -#: src/cats/ingres.c:1081 +#: src/cats/ingres.c:1087 msgid "A user name for Ingres must be supplied.\n" msgstr "" @@ -14407,39 +14422,39 @@ "exceeded.\n" msgstr "" -#: src/cats/postgresql.c:344 +#: src/cats/postgresql.c:350 msgid "PQescapeStringConn returned non-zero.\n" msgstr "" -#: src/cats/postgresql.c:362 +#: src/cats/postgresql.c:368 msgid "PQescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:393 +#: src/cats/postgresql.c:399 msgid "PQunescapeByteaConn returned NULL.\n" msgstr "" -#: src/cats/postgresql.c:807 +#: src/cats/postgresql.c:813 #, c-format msgid "error fetching currval: %s\n" msgstr "" -#: src/cats/postgresql.c:998 src/cats/dbi.c:1271 +#: src/cats/postgresql.c:1004 src/cats/dbi.c:1277 #, c-format msgid "error starting batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1028 src/cats/postgresql.c:1035 +#: src/cats/postgresql.c:1034 src/cats/postgresql.c:1041 #, c-format msgid "error ending batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1082 +#: src/cats/postgresql.c:1088 #, c-format msgid "error copying in batch mode: %s" msgstr "" -#: src/cats/postgresql.c:1104 +#: src/cats/postgresql.c:1110 msgid "A user name for PostgreSQL must be supplied.\n" msgstr "" @@ -14476,20 +14491,20 @@ "exceeded.\n" msgstr "" -#: src/cats/dbi.c:1433 +#: src/cats/dbi.c:1439 #, c-format msgid "error inserting batch mode: %s" msgstr "" -#: src/cats/dbi.c:1450 +#: src/cats/dbi.c:1456 msgid "Driver type not specified in Catalog resource.\n" msgstr "" -#: src/cats/dbi.c:1454 +#: src/cats/dbi.c:1460 msgid "Invalid driver type, must be \"dbi:<type>\"\n" msgstr "" -#: src/cats/dbi.c:1458 +#: src/cats/dbi.c:1464 msgid "A user name for DBI must be supplied.\n" msgstr "" @@ -14521,7 +14536,7 @@ "incorrect.\n" msgstr "" -#: src/cats/mysql.c:686 +#: src/cats/mysql.c:692 msgid "A user name for MySQL must be supplied.\n" msgstr "" @@ -14667,12 +14682,12 @@ msgid "You must enter a number between 1 and %d\n" msgstr "Ви повинні увести номер із проміжку 1..%d\n" -#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:129 +#: src/console/console.c:1160 src/qt-console/bcomm/dircomm.cpp:131 #, c-format msgid "Failed to initialize TLS context for Console \"%s\".\n" msgstr "Ініціалізація контексту TLS для Консолі невдала \"%s\".\n" -#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:152 +#: src/console/console.c:1180 src/qt-console/bcomm/dircomm.cpp:154 #, c-format msgid "Failed to initialize TLS context for Director \"%s\".\n" msgstr "Ініціалізація контексту TLS для Керівника невдала \"%s\".\n" @@ -15704,10 +15719,10 @@ msgstr "" #: src/filed/xattr.c:96 src/filed/xattr.c:111 src/filed/xattr.c:119 -#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:105 -#: src/filed/acl.c:120 src/filed/acl.c:128 src/filed/backup.c:993 -#: src/filed/backup.c:1189 src/filed/backup.c:1226 src/filed/backup.c:1239 -#: src/filed/backup.c:1315 src/filed/backup.c:1413 +#: src/filed/fd_plugins.c:694 src/filed/fd_plugins.c:708 src/filed/acl.c:107 +#: src/filed/acl.c:122 src/filed/acl.c:130 src/filed/backup.c:993 +#: src/filed/backup.c:1193 src/filed/backup.c:1230 src/filed/backup.c:1243 +#: src/filed/backup.c:1319 src/filed/backup.c:1417 #, c-format msgid "Network send error to SD. ERR=%s\n" msgstr "" @@ -15967,7 +15982,7 @@ msgid "Failed to restore extended attributes on file \"%s\"\n" msgstr "" -#: src/filed/xattr.c:3814 src/filed/acl.c:2148 +#: src/filed/xattr.c:3814 src/filed/acl.c:2253 #, fuzzy, c-format msgid "Unable to stat file \"%s\": ERR=%s\n" msgstr "Не можливо встановити власника файлу %s: ERR=%s\n" @@ -16111,179 +16126,189 @@ msgid "No Director resource defined in %s\n" msgstr "" -#: src/filed/acl.c:226 src/filed/acl.c:251 +#: src/filed/acl.c:228 src/filed/acl.c:253 #, fuzzy, c-format msgid "aclx_get error on file \"%s\": ERR=%s\n" msgstr "Помилка у %s файл %s: ERR=%s\n" -#: src/filed/acl.c:277 +#: src/filed/acl.c:279 #, fuzzy, c-format msgid "Unknown acl type encountered on file \"%s\": %ld\n" msgstr "Невідомий тип файлу %d: не відновлено: %s\n" -#: src/filed/acl.c:301 src/filed/acl.c:310 +#: src/filed/acl.c:303 src/filed/acl.c:312 #, fuzzy, c-format msgid "Failed to convert acl into text on file \"%s\"\n" msgstr "Ініціалізація контексту TLS для Консолі невдала \"%s\".\n" -#: src/filed/acl.c:383 +#: src/filed/acl.c:385 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without AIXC acl " "support\n" msgstr "" -#: src/filed/acl.c:391 +#: src/filed/acl.c:393 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without NFS4 acl " "support\n" msgstr "" -#: src/filed/acl.c:437 src/filed/acl.c:447 +#: src/filed/acl.c:441 src/filed/acl.c:451 #, fuzzy, c-format msgid "aclx_scanStr error on file \"%s\": ERR=%s\n" msgstr "Помилка у %s файл %s: ERR=%s\n" -#: src/filed/acl.c:473 +#: src/filed/acl.c:477 #, fuzzy, c-format msgid "aclx_put error on file \"%s\": ERR=%s\n" msgstr "Помилка у %s файл %s: ERR=%s\n" -#: src/filed/acl.c:815 +#: src/filed/acl.c:819 #, c-format msgid "acl_to_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:845 +#: src/filed/acl.c:849 #, c-format msgid "acl_get_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:898 +#: src/filed/acl.c:902 #, c-format msgid "" "acl_delete_def_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:904 +#: src/filed/acl.c:908 #, c-format msgid "acl_delete_def_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:915 +#: src/filed/acl.c:919 #, c-format msgid "acl_from_text error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:931 +#: src/filed/acl.c:935 #, fuzzy, c-format msgid "acl_valid error on file \"%s\": ERR=%s\n" msgstr "Помилка у %s файл %s: ERR=%s\n" -#: src/filed/acl.c:963 +#: src/filed/acl.c:967 #, c-format msgid "acl_set_file error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:972 +#: src/filed/acl.c:976 #, c-format msgid "acl_set_file error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1079 src/filed/acl.c:1108 src/filed/acl.c:1222 -#: src/filed/acl.c:1722 src/filed/acl.c:1829 +#: src/filed/acl.c:1083 src/filed/acl.c:1112 src/filed/acl.c:1226 +#: src/filed/acl.c:1726 src/filed/acl.c:1833 #, c-format msgid "pathconf error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1238 +#: src/filed/acl.c:1242 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without %s acl support\n" msgstr "" -#: src/filed/acl.c:1515 +#: src/filed/acl.c:1519 #, c-format msgid "getacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1550 +#: src/filed/acl.c:1554 #, c-format msgid "acltostr error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1572 src/filed/acl.c:1582 +#: src/filed/acl.c:1576 src/filed/acl.c:1586 #, c-format msgid "strtoacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1611 +#: src/filed/acl.c:1615 #, c-format msgid "setacl error on file \"%s\": filesystem doesn't support ACLs\n" msgstr "" -#: src/filed/acl.c:1619 +#: src/filed/acl.c:1623 #, c-format msgid "setacl error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1744 +#: src/filed/acl.c:1748 #, c-format msgid "acl_get error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1818 +#: src/filed/acl.c:1822 #, c-format msgid "" "Trying to restore acl on file \"%s\" on filesystem without acl support\n" msgstr "" -#: src/filed/acl.c:1847 +#: src/filed/acl.c:1851 #, c-format msgid "" "Trying to restore POSIX acl on file \"%s\" on filesystem without aclent acl " "support\n" msgstr "" -#: src/filed/acl.c:1858 +#: src/filed/acl.c:1862 #, c-format msgid "" "Trying to restore NFSv4 acl on file \"%s\" on filesystem without ace acl " "support\n" msgstr "" -#: src/filed/acl.c:1874 +#: src/filed/acl.c:1878 #, c-format msgid "acl_fromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:1888 src/filed/acl.c:1896 +#: src/filed/acl.c:1892 src/filed/acl.c:1900 #, c-format msgid "wrong encoding of acl type in acl stream on file \"%s\"\n" msgstr "" -#: src/filed/acl.c:1921 +#: src/filed/acl.c:1925 #, c-format msgid "acl_set error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2006 +#: src/filed/acl.c:2011 #, c-format msgid "acltotext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2029 +#: src/filed/acl.c:2034 #, c-format msgid "aclfromtext error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2049 +#: src/filed/acl.c:2054 #, c-format msgid "acl(SETACL) error on file \"%s\": ERR=%s\n" msgstr "" -#: src/filed/acl.c:2221 +#: src/filed/acl.c:2120 +#, fuzzy, c-format +msgid "pioctl VIOCGETAL error on file \"%s\": ERR=%s\n" +msgstr "Помилка у %s файл %s: ERR=%s\n" + +#: src/filed/acl.c:2148 +#, fuzzy, c-format +msgid "pioctl VIOCSETAL error on file \"%s\": ERR=%s\n" +msgstr "Помилка у %s файл %s: ERR=%s\n" + +#: src/filed/acl.c:2351 #, c-format msgid "Can't restore ACLs of %s - incompatible acl stream encountered - %d\n" msgstr "" @@ -16435,34 +16460,34 @@ msgid "Compression deflateReset error: %d\n" msgstr "" -#: src/filed/backup.c:1116 +#: src/filed/backup.c:1120 #, c-format msgid "Compression LZO error: %d\n" msgstr "" -#: src/filed/backup.c:1161 src/filed/backup.c:1177 +#: src/filed/backup.c:1165 src/filed/backup.c:1181 msgid "Encryption error\n" msgstr "" -#: src/filed/backup.c:1203 +#: src/filed/backup.c:1207 #, c-format msgid "Read error on file %s. ERR=%s\n" msgstr "" -#: src/filed/backup.c:1206 +#: src/filed/backup.c:1210 #, c-format msgid "Too many errors. JobErrors=%d.\n" msgstr "" -#: src/filed/backup.c:1216 +#: src/filed/backup.c:1220 msgid "Encryption padding error\n" msgstr "" -#: src/filed/backup.c:1280 +#: src/filed/backup.c:1284 msgid "Invalid file flags, no supported data stream type.\n" msgstr "" -#: src/filed/backup.c:1536 +#: src/filed/backup.c:1540 #, c-format msgid "VSS Writer (BackupComplete): %s\n" msgstr "" @@ -16672,247 +16697,247 @@ msgid "Failed to retrieve current UserName\n" msgstr "" -#: src/filed/job.c:458 +#: src/filed/job.c:456 #, c-format msgid "2901 Job %s not found.\n" msgstr "" -#: src/filed/job.c:468 +#: src/filed/job.c:466 #, c-format msgid "2001 Job %s marked to be canceled.\n" msgstr "" -#: src/filed/job.c:471 +#: src/filed/job.c:469 msgid "2902 Error scanning cancel command.\n" msgstr "" -#: src/filed/job.c:494 +#: src/filed/job.c:492 #, c-format msgid "2991 Bad setdebug command: %s\n" msgstr "" -#: src/filed/job.c:517 +#: src/filed/job.c:515 #, c-format msgid "Bad estimate command: %s" msgstr "" -#: src/filed/job.c:518 +#: src/filed/job.c:516 msgid "2992 Bad estimate command.\n" msgstr "" -#: src/filed/job.c:541 +#: src/filed/job.c:539 #, c-format msgid "Bad Job Command: %s" msgstr "" -#: src/filed/job.c:580 +#: src/filed/job.c:578 #, c-format msgid "Bad RunBeforeJob command: %s\n" msgstr "" -#: src/filed/job.c:581 src/filed/job.c:600 +#: src/filed/job.c:579 src/filed/job.c:598 msgid "2905 Bad RunBeforeJob command.\n" msgstr "" -#: src/filed/job.c:611 +#: src/filed/job.c:609 msgid "2905 Bad RunBeforeNow command.\n" msgstr "" -#: src/filed/job.c:630 +#: src/filed/job.c:628 #, c-format msgid "Bad RunAfter command: %s\n" msgstr "" -#: src/filed/job.c:631 +#: src/filed/job.c:629 msgid "2905 Bad RunAfterJob command.\n" msgstr "" -#: src/filed/job.c:667 +#: src/filed/job.c:665 #, c-format msgid "Bad RunScript command: %s\n" msgstr "" -#: src/filed/job.c:668 +#: src/filed/job.c:666 msgid "2905 Bad RunScript command.\n" msgstr "" -#: src/filed/job.c:722 +#: src/filed/job.c:720 #, fuzzy, c-format msgid "Bad RestoreObject command: %s\n" msgstr "Погана відповідь на команду Hello: ERR=%s\n" -#: src/filed/job.c:789 +#: src/filed/job.c:785 msgid "2909 Bad RestoreObject command.\n" msgstr "" -#: src/filed/job.c:828 +#: src/filed/job.c:824 #, c-format msgid "Plugin Directory not defined. Cannot use plugin: \"%s\"\n" msgstr "" -#: src/filed/job.c:870 +#: src/filed/job.c:866 #, c-format msgid "Error running program: %s. stat=%d: ERR=%s\n" msgstr "" -#: src/filed/job.c:881 +#: src/filed/job.c:877 #, c-format msgid "Cannot open FileSet input file: %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:1027 +#: src/filed/job.c:1023 #, c-format msgid "REGEX %s compile error. ERR=%s\n" msgstr "" -#: src/filed/job.c:1178 +#: src/filed/job.c:1174 #, c-format msgid "Invalid FileSet command: %s\n" msgstr "" -#: src/filed/job.c:1651 +#: src/filed/job.c:1647 #, c-format msgid "" "DIR and FD clocks differ by %lld seconds, FD automatically compensating.\n" msgstr "" -#: src/filed/job.c:1660 +#: src/filed/job.c:1656 #, c-format msgid "Unknown backup level: %s\n" msgstr "" -#: src/filed/job.c:1673 +#: src/filed/job.c:1669 #, c-format msgid "Bad level command: %s\n" msgstr "" -#: src/filed/job.c:1695 +#: src/filed/job.c:1691 #, c-format msgid "Bad session command: %s" msgstr "" -#: src/filed/job.c:1756 +#: src/filed/job.c:1752 #, c-format msgid "Bad storage command: %s" msgstr "" -#: src/filed/job.c:1777 +#: src/filed/job.c:1773 #, c-format msgid "Failed to connect to Storage daemon: %s:%d\n" msgstr "" -#: src/filed/job.c:1789 +#: src/filed/job.c:1785 msgid "Failed to authenticate Storage daemon.\n" msgstr "" -#: src/filed/job.c:1836 +#: src/filed/job.c:1832 msgid "ACL support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1840 +#: src/filed/job.c:1836 msgid "XATTR support not configured for your machine.\n" msgstr "" -#: src/filed/job.c:1849 +#: src/filed/job.c:1845 msgid "Cannot contact Storage daemon\n" msgstr "" -#: src/filed/job.c:1868 +#: src/filed/job.c:1864 #, c-format msgid "Bad response to append open: %s\n" msgstr "" -#: src/filed/job.c:1873 +#: src/filed/job.c:1869 msgid "Bad response from stored to open command\n" msgstr "" -#: src/filed/job.c:1905 +#: src/filed/job.c:1901 #, c-format msgid "Generate VSS snapshots. Driver=\"%s\", Drive(s)=\"%s\"\n" msgstr "" -#: src/filed/job.c:1908 +#: src/filed/job.c:1904 #, fuzzy, c-format msgid "CreateSGenerate VSS snapshots failed. ERR=%s\n" msgstr "Не можливо створити теку %s: ERR=%s\n" -#: src/filed/job.c:1915 +#: src/filed/job.c:1911 #, c-format msgid "Generate VSS snapshot of drive \"%c:\\\" failed.\n" msgstr "" -#: src/filed/job.c:1921 +#: src/filed/job.c:1917 #, c-format msgid "VSS Writer (PrepareForBackup): %s\n" msgstr "" -#: src/filed/job.c:1926 +#: src/filed/job.c:1922 msgid "No drive letters found for generating VSS snapshots.\n" msgstr "" -#: src/filed/job.c:1930 +#: src/filed/job.c:1926 #, c-format msgid "VSS was not initialized properly. ERR=%s\n" msgstr "" -#: src/filed/job.c:1981 +#: src/filed/job.c:1977 msgid "Append Close with SD failed.\n" msgstr "" -#: src/filed/job.c:1985 +#: src/filed/job.c:1981 #, c-format msgid "Bad status %d returned from Storage Daemon.\n" msgstr "" -#: src/filed/job.c:2015 +#: src/filed/job.c:2011 #, c-format msgid "2994 Bad verify command: %s\n" msgstr "" -#: src/filed/job.c:2030 src/filed/job.c:2071 +#: src/filed/job.c:2026 src/filed/job.c:2067 #, c-format msgid "2994 Bad verify level: %s\n" msgstr "" -#: src/filed/job.c:2143 +#: src/filed/job.c:2138 #, c-format msgid "Bad replace command. CMD=%s\n" msgstr "" -#: src/filed/job.c:2166 +#: src/filed/job.c:2161 #, c-format msgid "Bad where regexp. where=%s\n" msgstr "" -#: src/filed/job.c:2204 +#: src/filed/job.c:2199 #, c-format msgid "VSS was not initialized properly. VSS support is disabled. ERR=%s\n" msgstr "" -#: src/filed/job.c:2249 +#: src/filed/job.c:2244 #, c-format msgid "VSS Writer (RestoreComplete): %s\n" msgstr "" -#: src/filed/job.c:2297 +#: src/filed/job.c:2294 msgid "Improper calling sequence.\n" msgstr "" -#: src/filed/job.c:2317 +#: src/filed/job.c:2314 #, c-format msgid "Bad response to SD read open: %s\n" msgstr "" -#: src/filed/job.c:2322 +#: src/filed/job.c:2319 msgid "Bad response from stored to read open command\n" msgstr "" -#: src/filed/job.c:2390 +#: src/filed/job.c:2383 #, c-format msgid "Comm error with SD. bad response to %s. ERR=%s\n" msgstr "" -#: src/filed/job.c:2393 +#: src/filed/job.c:2386 #, c-format msgid "Bad response to %s command. Wanted %s, got %s\n" msgstr "" @@ -17114,12 +17139,12 @@ " -? показати це повідомлення.\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:90 +#: src/qt-console/bcomm/dircomm.cpp:92 #, c-format msgid "Already connected\"%s\".\n" msgstr "Вже приєднано\"%s\".\n" -#: src/qt-console/bcomm/dircomm.cpp:103 +#: src/qt-console/bcomm/dircomm.cpp:105 #, c-format msgid "" "Connecting to Director %s:%d\n" @@ -17128,35 +17153,35 @@ "З'єднуюсь із Керівником %s:%d\n" "\n" -#: src/qt-console/bcomm/dircomm.cpp:206 +#: src/qt-console/bcomm/dircomm.cpp:208 msgid "Initializing ..." msgstr "Ініціалізація ..." -#: src/qt-console/bcomm/dircomm.cpp:221 src/qt-console/console/console.cpp:142 +#: src/qt-console/bcomm/dircomm.cpp:224 src/qt-console/console/console.cpp:142 msgid "Connected" msgstr "З'єднано" -#: src/qt-console/bcomm/dircomm.cpp:345 +#: src/qt-console/bcomm/dircomm.cpp:348 msgid "Command completed ..." msgstr "Команду виконано ..." -#: src/qt-console/bcomm/dircomm.cpp:352 src/qt-console/console/console.cpp:373 +#: src/qt-console/bcomm/dircomm.cpp:355 src/qt-console/console/console.cpp:379 msgid "Processing command ..." msgstr "Виконання команди ..." -#: src/qt-console/bcomm/dircomm.cpp:359 +#: src/qt-console/bcomm/dircomm.cpp:362 msgid "At main prompt waiting for input ..." msgstr "Очікуться введення у основній рядку ..." -#: src/qt-console/bcomm/dircomm.cpp:366 src/qt-console/bcomm/dircomm.cpp:378 +#: src/qt-console/bcomm/dircomm.cpp:369 src/qt-console/bcomm/dircomm.cpp:381 msgid "At prompt waiting for input ..." msgstr "Очікуться введення у рядку ..." -#: src/qt-console/bcomm/dircomm.cpp:386 +#: src/qt-console/bcomm/dircomm.cpp:389 msgid "Command failed." msgstr "Помилка команди" -#: src/qt-console/bcomm/dircomm.cpp:458 +#: src/qt-console/bcomm/dircomm.cpp:462 msgid "Director disconnected." msgstr "Керівник від'єднано" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/dbi.c ^ |
@@ -341,18 +341,24 @@ void B_DB_DBI::db_close_database(JCR *jcr) { - db_end_transaction(jcr); + if (m_connected) { + db_end_transaction(jcr); + } P(mutex); m_ref_count--; if (m_ref_count == 0) { - sql_free_result(); + if (m_connected) { + sql_free_result(); + } db_list->remove(this); if (m_connected && m_db_handle) { dbi_shutdown_r(m_instance); m_db_handle = NULL; m_instance = NULL; } - rwl_destroy(&m_lock); + if (rwl_is_init(&m_lock)) { + rwl_destroy(&m_lock); + } free_pool_memory(errmsg); free_pool_memory(cmd); free_pool_memory(cached_path); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/ingres.c ^ |
@@ -288,11 +288,15 @@ void B_DB_INGRES::db_close_database(JCR *jcr) { - db_end_transaction(jcr); + if (m_connected) { + db_end_transaction(jcr); + } P(mutex); m_ref_count--; if (m_ref_count == 0) { - sql_free_result(); + if (m_connected) { + sql_free_result(); + } db_list->remove(this); if (m_connected && m_db_handle) { INGdisconnectDB(m_db_handle); @@ -300,7 +304,9 @@ if (m_query_filters) { db_destroy_query_filters(m_query_filters); } - rwl_destroy(&m_lock); + if (rwl_is_init(&m_lock)) { + rwl_destroy(&m_lock); + } free_pool_memory(errmsg); free_pool_memory(cmd); free_pool_memory(cached_path); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/mysql.c ^ |
@@ -241,12 +241,16 @@ void B_DB_MYSQL::db_close_database(JCR *jcr) { - db_end_transaction(jcr); + if (m_connected) { + db_end_transaction(jcr); + } P(mutex); m_ref_count--; Dmsg3(100, "closedb ref=%d connected=%d db=%p\n", m_ref_count, m_connected, m_db_handle); if (m_ref_count == 0) { - sql_free_result(); + if (m_connected) { + sql_free_result(); + } db_list->remove(this); if (m_connected) { Dmsg1(100, "close db=%p\n", m_db_handle); @@ -256,7 +260,9 @@ // mysql_server_end(); #endif } - rwl_destroy(&m_lock); + if (rwl_is_init(&m_lock)) { + rwl_destroy(&m_lock); + } free_pool_memory(errmsg); free_pool_memory(cmd); free_pool_memory(cached_path); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/postgresql.c ^ |
@@ -278,16 +278,22 @@ void B_DB_POSTGRESQL::db_close_database(JCR *jcr) { - db_end_transaction(jcr); + if (m_connected) { + db_end_transaction(jcr); + } P(mutex); m_ref_count--; if (m_ref_count == 0) { - sql_free_result(); + if (m_connected) { + sql_free_result(); + } db_list->remove(this); if (m_connected && m_db_handle) { PQfinish(m_db_handle); } - rwl_destroy(&m_lock); + if (rwl_is_init(&m_lock)) { + rwl_destroy(&m_lock); + } free_pool_memory(errmsg); free_pool_memory(cmd); free_pool_memory(cached_path); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/sql_cmds.c ^ |
@@ -40,7 +40,7 @@ #include "bacula.h" -const char *get_restore_objects = +const char *get_restore_objects = "SELECT JobId,ObjectLength,ObjectFullLength,ObjectIndex," "ObjectType,ObjectCompression,FileIndex,ObjectName," "RestoreObject,PluginName " @@ -52,18 +52,18 @@ const char *cleanup_created_job = "UPDATE Job SET JobStatus='f', StartTime=SchedTime, EndTime=SchedTime " "WHERE JobStatus = 'C'"; -const char *cleanup_running_job = +const char *cleanup_running_job = "UPDATE Job SET JobStatus='f', EndTime=StartTime WHERE JobStatus = 'R'"; /* For sql_update.c db_update_stats */ const char *fill_jobhisto = - "INSERT INTO JobHisto (" + "INSERT INTO JobHisto (" "JobId, Job, Name, Type, Level, ClientId, JobStatus, " "SchedTime, StartTime, EndTime, RealEndTime, JobTDate, " "VolSessionId, VolSessionTime, JobFiles, JobBytes, ReadBytes, " "JobErrors, JobMissingFiles, PoolId, FileSetId, PriorJobId, " "PurgedFiles, HasBase, Reviewed, Comment ) " - "SELECT " + "SELECT " "JobId, Job, Name, Type, Level, ClientId, JobStatus, " "SchedTime, StartTime, EndTime, RealEndTime, JobTDate, " "VolSessionId, VolSessionTime, JobFiles, JobBytes, ReadBytes, " @@ -87,14 +87,14 @@ " WHERE Client.Name='%s'" " AND FileSet='%s'" " AND Client.ClientId=Job.ClientId" - " AND JobStatus IN ('T','W') AND Type='B'" + " AND JobStatus IN ('T','W') AND Type='B'" " AND JobMedia.JobId=Job.JobId AND JobMedia.MediaId=Media.MediaId" " AND Job.FileSetId=FileSet.FileSetId" " ORDER BY Job.StartTime"; /* ====== ua_prune.c */ -const char *sel_JobMedia = +const char *sel_JobMedia = "SELECT DISTINCT JobMedia.JobId FROM JobMedia,Job " "WHERE MediaId=%s AND Job.JobId=JobMedia.JobId " "AND Job.JobTDate<%s"; @@ -117,7 +117,7 @@ "FROM Client,Job WHERE Client.ClientId=Job.ClientId AND JobStatus IN ('T','W') " "AND Type='B' ORDER BY StartTime DESC LIMIT 20"; -const char *uar_print_jobs = +const char *uar_print_jobs = "SELECT DISTINCT JobId,Level,JobFiles,JobBytes,StartTime,VolumeName" " FROM Job JOIN JobMedia USING (JobId) JOIN Media USING (MediaId) " " WHERE JobId IN (%s) " @@ -199,7 +199,7 @@ " ORDER BY StartTime ASC"; -const char *uar_sel_jobid_temp = +const char *uar_sel_jobid_temp = "SELECT DISTINCT JobId,StartTime FROM temp ORDER BY StartTime ASC"; const char *uar_sel_all_temp1 = "SELECT * FROM temp1"; @@ -257,20 +257,20 @@ "ORDER BY Job.StartTime DESC LIMIT 1"; /* Query to get list of files from table -- presuably built by an external program */ -const char *uar_jobid_fileindex_from_table = +const char *uar_jobid_fileindex_from_table = "SELECT JobId,FileIndex FROM %s ORDER BY JobId, FileIndex ASC"; -/* Get the list of the last recent version per Delta with a given jobid list - * This is a tricky part because with SQL the result of +/* Get the list of the last recent version per Delta with a given jobid list + * This is a tricky part because with SQL the result of * * SELECT MAX(A), B, C, D FROM... GROUP BY (B,C) * * doesn't give the good result (for D). * * With PostgreSQL, we can use DISTINCT ON(), but with Mysql or Sqlite, - * we need an extra join using JobTDate. + * we need an extra join using JobTDate. */ -const char *select_recent_version_with_basejob_default = +static const char *select_recent_version_with_basejob_default = "SELECT FileId, Job.JobId AS JobId, FileIndex, File.PathId AS PathId, " "File.FilenameId AS FilenameId, LStat, MD5, DeltaSeq, " "Job.JobTDate AS JobTDate " @@ -281,7 +281,7 @@ "FROM File JOIN Job USING (JobId) " /* from selected backup */ "WHERE File.JobId IN (%s) " "UNION ALL " - "SELECT JobTDate, PathId, FilenameId " /* Get all files from */ + "SELECT JobTDate, PathId, FilenameId " /* Get all files from */ "FROM BaseFiles " /* BaseJob */ "JOIN File USING (FileId) " "JOIN Job ON (BaseJobId = Job.JobId) " @@ -334,10 +334,10 @@ * If we detect a gap, we can discard further pieces * If a file starts at 1 instead of 0, the file has been deleted, and further * pieces are useless. - * + * * This control should be reset for each new file */ -const char *select_recent_version_with_basejob_and_delta_default = +static const char *select_recent_version_with_basejob_and_delta_default = "SELECT FileId, Job.JobId AS JobId, FileIndex, File.PathId AS PathId, " "File.FilenameId AS FilenameId, LStat, MD5, File.DeltaSeq AS DeltaSeq, " "Job.JobTDate AS JobTDate " @@ -348,7 +348,7 @@ "FROM File JOIN Job USING (JobId) " /* from selected backup */ "WHERE File.JobId IN (%s) " "UNION ALL " - "SELECT JobTDate, PathId, FilenameId, DeltaSeq " /*Get all files from */ + "SELECT JobTDate, PathId, FilenameId, DeltaSeq " /*Get all files from */ "FROM BaseFiles " /* BaseJob */ "JOIN File USING (FileId) " "JOIN Job ON (BaseJobId = Job.JobId) " @@ -392,7 +392,7 @@ /* Get the list of the last recent version with a given BaseJob jobid list * We don't handle Delta with BaseJobs, they have only Full files */ -const char *select_recent_version_default = +static const char *select_recent_version_default = "SELECT j1.JobId AS JobId, f1.FileId AS FileId, f1.FileIndex AS FileIndex, " "f1.PathId AS PathId, f1.FilenameId AS FilenameId, " "f1.LStat AS LStat, f1.MD5 AS MD5, j1.JobTDate " @@ -426,10 +426,10 @@ select_recent_version_default }; -/* We don't create this table as TEMPORARY because MySQL MyISAM +/* We don't create this table as TEMPORARY because MySQL MyISAM * 5.0 and 5.1 are unable to run further queries in this mode */ -const char *create_temp_accurate_jobids_default = +static const char *create_temp_accurate_jobids_default = "CREATE TABLE btemp3%s AS " "SELECT JobId, StartTime, EndTime, JobTDate, PurgedFiles " "FROM Job JOIN FileSet USING (FileSetId) " @@ -540,7 +540,7 @@ "JobStatus BINARY(1))", /* Postgresql */ - "CREATE TEMPORARY TABLE DelCandidates (" + "CREATE TEMPORARY TABLE DelCandidates (" "JobId INTEGER NOT NULL, " "PurgedFiles SMALLINT, " "FileSetId INTEGER, " @@ -556,7 +556,7 @@ "JobStatus CHAR)", /* Ingres */ - "DECLARE GLOBAL TEMPORARY TABLE DelCandidates (" + "DECLARE GLOBAL TEMPORARY TABLE DelCandidates (" "JobId INTEGER NOT NULL, " "PurgedFiles SMALLINT, " "FileSetId INTEGER, " @@ -569,7 +569,7 @@ /* Select the first available Copy Job that must be upgraded to a Backup job when the original backup job is expired. */ -const char *uap_upgrade_copies_oldest_job_default = +static const char *uap_upgrade_copies_oldest_job_default = "CREATE TEMPORARY TABLE cpy_tmp AS " "SELECT MIN(JobId) AS JobId FROM Job " /* Choose the oldest job */ "WHERE Type='%c' " /* JT_JOB_COPY */ @@ -738,7 +738,7 @@ "ON COMMIT PRESERVE ROWS WITH NORECOVERY" }; -/* Query to get all files in a directory -- no recursing +/* Query to get all files in a directory -- no recursing * Note, for PostgreSQL since it respects the "Single Value * rule", the results of the SELECT will be unoptimized. * I.e. the same file will be restored multiple times, once @@ -846,13 +846,13 @@ "FROM btemp%s " "GROUP BY PathId, FilenameId " "HAVING FileIndex > 0", - + /* Ingres (TODO) */ "SELECT 0" }; -const char *sql_bvfs_list_files_default = +static const char *sql_bvfs_list_files_default = "SELECT 'F', T1.PathId, T1.FilenameId, Filename.Name, " "File.JobId, File.LStat, File.FileId " "FROM Job, File, ( " @@ -1015,3 +1015,43 @@ /* Ingres */ "~" }; + +static const char *select_counter_values_default = + "SELECT MinValue, MaxValue, CurrentValue, WrapCounter " + "FROM Counters WHERE Counter='%s'"; + +const char *select_counter_values[] = { + /* Mysql */ + "SELECT Counters.MinValue, Counters.MaxValue, CurrentValue, WrapCounter " + "FROM Counters WHERE Counter='%s'", + + /* Postgresql */ + select_counter_values_default, + + /* SQLite3 */ + select_counter_values_default, + + /* Ingres */ + select_counter_values_default +}; + +static const char *update_counter_values_default = + "UPDATE Counters SET " + "MinValue=%d, MaxValue=%d, CurrentValue=%d, WrapCounter='%s'" + "WHERE Counter='%s'"; + +const char *update_counter_values[] = { + /* Mysql */ + "UPDATE Counters SET " + "Counters.MinValue=%d, Counters.MaxValue=%d, CurrentValue=%d, WrapCounter='%s'" + "WHERE Counter='%s'", + + /* Postgresql */ + update_counter_values_default, + + /* SQLite3 */ + update_counter_values_default, + + /* Ingres */ + update_counter_values_default +}; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/sql_cmds.h ^ |
@@ -84,3 +84,5 @@ extern const char CATS_IMP_EXP *batch_fill_path_query[]; extern const char CATS_IMP_EXP *batch_fill_filename_query[]; extern const char CATS_IMP_EXP *match_query[]; +extern const char CATS_IMP_EXP *select_counter_values[]; +extern const char CATS_IMP_EXP *update_counter_values[]; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/sql_get.c ^ |
@@ -756,9 +756,7 @@ db_lock(mdb); mdb->db_escape_string(jcr, esc, cr->Counter, strlen(cr->Counter)); - Mmsg(mdb->cmd, "SELECT Counters.MinValue,Counters.MaxValue,CurrentValue,WrapCounter " - "FROM Counters WHERE Counter='%s'", esc); - + Mmsg(mdb->cmd, select_counter_values[mdb->db_get_type_index()], esc); if (QUERY_DB(jcr, mdb, mdb->cmd)) { num_rows = sql_num_rows(mdb); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/sql_update.c ^ |
@@ -253,10 +253,9 @@ db_lock(mdb); mdb->db_escape_string(jcr, esc, cr->Counter, strlen(cr->Counter)); Mmsg(mdb->cmd, -"UPDATE Counters SET Counters.MinValue=%d,Counters.MaxValue=%d,CurrentValue=%d," -"WrapCounter='%s' WHERE Counter='%s'", - cr->MinValue, cr->MaxValue, cr->CurrentValue, - cr->WrapCounter, esc); + update_counter_values[mdb->db_get_type_index()], + cr->MinValue, cr->MaxValue, cr->CurrentValue, + cr->WrapCounter, esc); int stat = UPDATE_DB(jcr, mdb, mdb->cmd); db_unlock(mdb); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/sqlite.c ^ |
@@ -230,16 +230,22 @@ void B_DB_SQLITE::db_close_database(JCR *jcr) { - db_end_transaction(jcr); + if (m_connected) { + db_end_transaction(jcr); + } P(mutex); m_ref_count--; if (m_ref_count == 0) { - sql_free_result(); + if (m_connected) { + sql_free_result(); + } db_list->remove(this); if (m_connected && m_db_handle) { sqlite3_close(m_db_handle); } - rwl_destroy(&m_lock); + if (rwl_is_init(&m_lock)) { + rwl_destroy(&m_lock); + } free_pool_memory(errmsg); free_pool_memory(cmd); free_pool_memory(cached_path); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/cats/update_sqlite3_tables.in ^ |
@@ -38,7 +38,7 @@ ObjectIndex INTEGER DEFAULT 0, ObjectType INTEGER DEFAULT 0, FileIndex INTEGER UNSIGNED DEFAULT 0, - ObejctCompression INTEGER DEFAULT 0, + ObjectCompression INTEGER DEFAULT 0, JobId INTEGER UNSIGNED REFERENCES Job NOT NULL, PRIMARY KEY(RestoreObjectId) ); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/dird/dird.c ^ |
@@ -110,7 +110,7 @@ fprintf(stderr, _( PROG_COPYRIGHT "\nVersion: %s (%s)\n\n" -"Usage: dird [-f -s] [-c config_file] [-d debug_level] [config_file]\n" +"Usage: bacula-dir [-f -s] [-c config_file] [-d debug_level] [config_file]\n" " -c <file> set configuration file to file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/dird/ua_cmds.c ^ |
@@ -1206,16 +1206,6 @@ return 1; } - if (!send_include_list(jcr)) { - ua->error_msg(_("Error sending include list.\n")); - goto bail_out; - } - - if (!send_exclude_list(jcr)) { - ua->error_msg(_("Error sending exclude list.\n")); - goto bail_out; - } - /* The level string change if accurate mode is enabled */ if (accurate >= 0) { jcr->accurate = accurate; @@ -1227,6 +1217,16 @@ goto bail_out; } + if (!send_include_list(jcr)) { + ua->error_msg(_("Error sending include list.\n")); + goto bail_out; + } + + if (!send_exclude_list(jcr)) { + ua->error_msg(_("Error sending exclude list.\n")); + goto bail_out; + } + /* * If the job is in accurate mode, we send the list of * all files to FD. | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/dird/ua_restore.c ^ |
@@ -1530,8 +1530,13 @@ if (acl_access_ok(ua, Storage_ACL, store->name())) { rx.store = store; Dmsg1(200, "Set store=%s\n", rx.store->name()); - ua->warning_msg(_("Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n"), - Storage, store->name(), MediaType); + if (Storage == NULL) { + ua->warning_msg(_("Using Storage \"%s\" from MediaType \"%s\".\n"), + store->name(), MediaType); + } else { + ua->warning_msg(_("Storage \"%s\" not found, using Storage \"%s\" from MediaType \"%s\".\n"), + Storage, store->name(), MediaType); + } } UnlockRes(); return; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/filed/Makefile.in ^ |
@@ -24,6 +24,8 @@ PYTHON_LIBS = @PYTHON_LIBS@ PYTHON_INC = @PYTHON_INCDIR@ +AFS_CFLAGS = @AFS_CFLAGS@ +AFS_LIBS = @AFS_LIBS@ first_rule: all dummy: @@ -64,7 +66,7 @@ acl.o: acl.c @echo "Compiling $<" - $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $< + $(NO_ECHO)$(CXX) $(DEFS) $(DEBUG) -c $(WCFLAGS) $(CPPFLAGS) $(PYTHON_INC) -I$(srcdir) -I$(basedir) $(DINCLUDE) $(CFLAGS) $(AFS_CFLAGS) $< win32/winlib.a: @if test -f win32/Makefile -a "${GMAKE}" != "none"; then \ @@ -94,13 +96,13 @@ bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind$(DEFAULT_ARCHIVE_TYPE) ../lib/libbacpy$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@ @echo "Linking $@ ..." $(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -L../lib -L../findlib -o $@ $(SVROBJS) \ - $(WIN32LIBS) $(FDLIBS) $(ZLIBS) $(LZOLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \ - $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) + $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \ + $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS) static-bacula-fd: Makefile $(SVROBJS) ../findlib/libbacfind.a ../lib/libbacpy$(DEFAULT_ARCHIVE_TYPE) ../lib/libbaccfg$(DEFAULT_ARCHIVE_TYPE) ../lib/libbac$(DEFAULT_ARCHIVE_TYPE) @WIN32@ $(LIBTOOL_LINK) $(CXX) $(WLDFLAGS) $(LDFLAGS) -static -L../lib -L../findlib -o $@ $(SVROBJS) \ - $(WIN32LIBS) $(FDLIBS) $(ZLIBS) $(LZOLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \ - $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) + $(WIN32LIBS) $(FDLIBS) $(ZLIBS) -lbacfind -lbacpy -lbaccfg -lbac -lm $(PYTHON_LIBS) $(LIBS) \ + $(DLIB) $(WRAPLIBS) $(GETTEXT_LIBS) $(OPENSSL_LIBS) $(CAP_LIBS) $(AFS_LIBS) $(LZOLIBS) strip $@ Makefile: $(srcdir)/Makefile.in $(topdir)/config.status @@ -170,7 +172,7 @@ @$(MV) Makefile Makefile.bak @$(SED) "/^# DO NOT DELETE:/,$$ d" Makefile.bak > Makefile @$(ECHO) "# DO NOT DELETE: nice dependency list follows" >> Makefile - @$(CXX) -S -M $(CPPFLAGS) $(XINC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) *.c >> Makefile + @$(CXX) -S -M $(CPPFLAGS) $(AFS_CFLAGS) $(XINC) $(PYTHON_INC) -I$(srcdir) -I$(basedir) *.c >> Makefile @if test -f Makefile ; then \ $(RMF) Makefile.bak; \ else \ | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/filed/acl.c ^ |
@@ -38,6 +38,8 @@ * - Solaris (POSIX and NFSv4/ZFS acls) * - Tru64 * + * Next to OS specific acls we support AFS acls using the pioctl interface. + * * We handle two different types of ACLs: access and default ACLS. * On most systems that support default ACLs they only apply to directories. * @@ -63,7 +65,7 @@ #include "bacula.h" #include "filed.h" -#if !defined(HAVE_ACL) +#if !defined(HAVE_ACL) && !defined(HAVE_AFS_ACL) /** * Entry points when compiled without support for ACLs or on an unsupported platform. */ @@ -431,7 +433,9 @@ if (cnt < 3) { continue; } - /* FALL THROUGH */ + /* + * FALLTHROUGH + */ default: Mmsg2(jcr->errmsg, _("aclx_scanStr error on file \"%s\": ERR=%s\n"), @@ -1977,8 +1981,9 @@ char *acl_text; n = acl(jcr->last_fname, GETACLCNT, 0, NULL); - if (n < MIN_ACL_ENTRIES) + if (n < MIN_ACL_ENTRIES) { return bacl_exit_error; + } acls = (aclent_t *)malloc(n * sizeof(aclent_t)); if (acl(jcr->last_fname, GETACL, n, acls) == n) { @@ -2072,7 +2077,86 @@ #endif /* HAVE_SUN_OS */ #endif /* HAVE_ACL */ -/* +#if defined(HAVE_AFS_ACL) + +#if defined(HAVE_AFS_AFSINT_H) && defined(HAVE_AFS_VENUS_H) +#include <afs/afsint.h> +#include <afs/venus.h> +#else +#error "configure failed to detect availability of afs/afsint.h and/or afs/venus.h" +#endif + +/** + * External references to functions in the libsys library function not in current include files. + */ +extern "C" { +long pioctl(char *pathp, long opcode, struct ViceIoctl *blobp, int follow); +} + +static bacl_exit_code afs_build_acl_streams(JCR *jcr, FF_PKT *ff_pkt) +{ + int error; + struct ViceIoctl vip; + char acl_text[BUFSIZ]; + + /* + * AFS ACLs can only be set on a directory, so no need to try to + * request them for anything other then that. + */ + if (ff_pkt->type != FT_DIREND) { + return bacl_exit_ok; + } + + vip.in = NULL; + vip.in_size = 0; + vip.out = acl_text; + vip.out_size = sizeof(acl_text); + memset((caddr_t)acl_text, 0, sizeof(acl_text)); + + if ((error = pioctl(jcr->last_fname, VIOCGETAL, &vip, 0)) < 0) { + berrno be; + + Mmsg2(jcr->errmsg, + _("pioctl VIOCGETAL error on file \"%s\": ERR=%s\n"), + jcr->last_fname, be.bstrerror()); + Dmsg2(100, "pioctl VIOCGETAL error file=%s ERR=%s\n", + jcr->last_fname, be.bstrerror()); + return bacl_exit_error; + } + jcr->acl_data->u.build->content_length = + pm_strcpy(jcr->acl_data->u.build->content, acl_text); + return send_acl_stream(jcr, STREAM_ACL_AFS_TEXT); +} + +static bacl_exit_code afs_parse_acl_stream(JCR *jcr, + int stream, + char *content, + uint32_t content_length) +{ + int error; + struct ViceIoctl vip; + + vip.in = content; + vip.in_size = content_length; + vip.out = NULL; + vip.out_size = 0; + + if ((error = pioctl(jcr->last_fname, VIOCSETAL, &vip, 0)) < 0) { + berrno be; + + Mmsg2(jcr->errmsg, + _("pioctl VIOCSETAL error on file \"%s\": ERR=%s\n"), + jcr->last_fname, be.bstrerror()); + Dmsg2(100, "pioctl VIOCSETAL error file=%s ERR=%s\n", + jcr->last_fname, be.bstrerror()); + + return bacl_exit_error; + } + return bacl_exit_ok; +} +#endif /* HAVE_AFS_ACL */ + +/** * Entry points when compiled with support for ACLs on a supported platform. */ @@ -2083,7 +2167,7 @@ { /* * See if we are changing from one device to an other. - * We save the current device we are restoring to and compare + * We save the current device we are scanning and compare * it with the current st_dev in the last stat performed on * the file we are currently storing. */ @@ -2093,14 +2177,35 @@ */ jcr->acl_data->flags = 0; +#if defined(HAVE_AFS_ACL) + /* + * AFS is a non OS specific filesystem so see if this path is on an AFS filesystem + * Set the BACL_FLAG_SAVE_AFS flag if it is. If not set the BACL_FLAG_SAVE_NATIVE flag. + */ + if (fstype_equals(jcr->last_fname, "afs")) { + jcr->acl_data->flags |= BACL_FLAG_SAVE_AFS; + } else { + jcr->acl_data->flags |= BACL_FLAG_SAVE_NATIVE; + } +#else jcr->acl_data->flags |= BACL_FLAG_SAVE_NATIVE; +#endif - /** + /* * Save that we started scanning a new filesystem. */ jcr->acl_data->current_dev = ff_pkt->statp.st_dev; } +#if defined(HAVE_AFS_ACL) + /* + * See if the BACL_FLAG_SAVE_AFS flag is set which lets us know if we should + * save AFS ACLs. + */ + if (jcr->acl_data->flags & BACL_FLAG_SAVE_AFS) { + return afs_build_acl_streams(jcr, ff_pkt); + } +#endif #if defined(HAVE_ACL) /* * See if the BACL_FLAG_SAVE_NATIVE flag is set which lets us know if we should @@ -2161,7 +2266,20 @@ * Reset the acl save flags. */ jcr->acl_data->flags = 0; + +#if defined(HAVE_AFS_ACL) + /* + * AFS is a non OS specific filesystem so see if this path is on an AFS filesystem + * Set the BACL_FLAG_RESTORE_AFS flag if it is. If not set the BACL_FLAG_RETORE_NATIVE flag. + */ + if (fstype_equals(jcr->last_fname, "afs")) { + jcr->acl_data->flags |= BACL_FLAG_RESTORE_AFS; + } else { + jcr->acl_data->flags |= BACL_FLAG_RESTORE_NATIVE; + } +#else jcr->acl_data->flags |= BACL_FLAG_RESTORE_NATIVE; +#endif /* * Save that we started restoring to a new filesystem. @@ -2170,6 +2288,18 @@ } switch (stream) { +#if defined(HAVE_AFS_ACL) + case STREAM_ACL_AFS_TEXT: + if (jcr->acl_data->flags & BACL_FLAG_RESTORE_AFS) { + return afs_parse_acl_stream(jcr, stream, content, content_length); + } else { + /* + * Increment error count but don't log an error again for the same filesystem. + */ + jcr->acl_data->u.parse->nr_errors++; + return bacl_exit_ok; + } +#endif #if defined(HAVE_ACL) case STREAM_UNIX_ACCESS_ACL: case STREAM_UNIX_DEFAULT_ACL: | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/filed/backup.c ^ |
@@ -535,7 +535,7 @@ set_portable_backup(&ff_pkt->bfd); /* disable Win32 BackupRead() */ } - if (ff_pkt->cmd_plugin && !ff_pkt->no_read) { + if (ff_pkt->cmd_plugin) { do_plugin_set = true; /* option and cmd plugin are not compatible together */ @@ -602,7 +602,7 @@ do_read = true; } - if (ff_pkt->cmd_plugin) { + if (ff_pkt->cmd_plugin && !ff_pkt->no_read) { do_read = true; } @@ -1098,12 +1098,16 @@ #ifdef HAVE_LZO /** Do compression if turned on */ if (ff_pkt->flags & FO_COMPRESS && ff_pkt->Compress_algo == COMPRESS_LZO1X && jcr->LZO_compress_workset) { + lzo_uint len; /* TODO: See with the latest patch how to handle lzo_uint with 64bit */ + ser_declare; ser_begin(cbuf, sizeof(comp_stream_header)); Dmsg3(400, "cbuf=0x%x rbuf=0x%x len=%u\n", cbuf, rbuf, sd->msglen); - lzores = lzo1x_1_compress((const unsigned char*)rbuf, sd->msglen, cbuf2, &compress_len, jcr->LZO_compress_workset); + lzores = lzo1x_1_compress((const unsigned char*)rbuf, sd->msglen, cbuf2, + &len, jcr->LZO_compress_workset); + compress_len = len; if (lzores == LZO_E_OK && compress_len <= max_compress_len) { /* complete header */ @@ -1536,10 +1540,11 @@ Jmsg(jcr, msg_type, 0, _("VSS Writer (BackupComplete): %s\n"), g_pVSSClient->GetWriterInfo(i)); } } + /* Generate Job global writer metadata */ WCHAR *metadata = g_pVSSClient->GetMetadata(); if (metadata) { FF_PKT *ff_pkt = jcr->ff; - ff_pkt->fname = (char *)"job"; + ff_pkt->fname = (char *)"*all*"; /* for all plugins */ ff_pkt->type = FT_RESTORE_FIRST; ff_pkt->LinkFI = 0; ff_pkt->object_name = (char *)"job_metadata.xml"; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/filed/job.c ^ |
@@ -84,7 +84,6 @@ static int response(JCR *jcr, BSOCK *sd, char *resp, const char *cmd); static void filed_free_jcr(JCR *jcr); static int open_sd_read_session(JCR *jcr); -static int send_bootstrap_file(JCR *jcr); static int runscript_cmd(JCR *jcr); static int runbefore_cmd(JCR *jcr); static int runafter_cmd(JCR *jcr); @@ -188,7 +187,6 @@ static char OK_open[] = "3000 OK open ticket = %d\n"; static char OK_data[] = "3000 OK data\n"; static char OK_append[] = "3000 OK append data\n"; -static char OKSDbootstrap[]= "3000 OK bootstrap\n"; /* Commands sent to Storage Daemon */ @@ -765,9 +763,7 @@ /* we still need to do this to detect a vss restore */ if (strcmp(rop.object_name, "job_metadata.xml") == 0) { Dmsg0(100, "got job metadata\n"); - //free_and_null_pool_memory(jcr->job_metadata); - jcr->job_metadata = rop.object; /* this is like a boolean in the restore case */ - // rop.object = NULL; /* but not this */ + jcr->got_metadata = true; } generate_plugin_event(jcr, bEventRestoreObject, (void *)&rop); @@ -2119,8 +2115,7 @@ * No need to enable VSS for restore if we do not have plugin * data to restore */ - enable_vss = jcr->job_metadata != NULL; - jcr->job_metadata = NULL; + enable_vss = jcr->got_metadata; Dmsg2(50, "g_pVSSClient = %p, enable_vss = %d\n", g_pVSSClient, enable_vss); // capture state here, if client is backed up by multiple directors @@ -2271,7 +2266,6 @@ dir->fsend(OKstoreend); ret = 1; /* we continue the loop, waiting for next part */ } else { - end_restore_cmd(jcr); ret = 0; /* we stop here */ } @@ -2279,6 +2273,9 @@ ret = 0; /* we stop here */ } + if (ret == 0) { + end_restore_cmd(jcr); /* stopping so send bEventEndRestoreJob */ + } return ret; } @@ -2323,10 +2320,6 @@ return 0; } - if (!send_bootstrap_file(jcr)) { - return 0; - } - /* * Start read of data with Storage daemon */ @@ -2395,42 +2388,3 @@ } return 0; } - -static int send_bootstrap_file(JCR *jcr) -{ - FILE *bs; - char buf[2000]; - BSOCK *sd = jcr->store_bsock; - const char *bootstrap = "bootstrap\n"; - int stat = 0; - - Dmsg1(400, "send_bootstrap_file: %s\n", jcr->RestoreBootstrap); - if (!jcr->RestoreBootstrap) { - return 1; - } - bs = fopen(jcr->RestoreBootstrap, "rb"); - if (!bs) { - berrno be; - Jmsg(jcr, M_FATAL, 0, _("Could not open bootstrap file %s: ERR=%s\n"), - jcr->RestoreBootstrap, be.bstrerror()); - jcr->setJobStatus(JS_ErrorTerminated); - goto bail_out; - } - sd->msglen = pm_strcpy(sd->msg, bootstrap); - sd->send(); - while (fgets(buf, sizeof(buf), bs)) { - sd->msglen = Mmsg(sd->msg, "%s", buf); - sd->send(); - } - sd->signal(BNET_EOD); - fclose(bs); - if (!response(jcr, sd, OKSDbootstrap, "Bootstrap")) { - jcr->setJobStatus(JS_ErrorTerminated); - goto bail_out; - } - stat = 1; - -bail_out: - free_bootstrap(jcr); - return stat; -} | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/jcr.h ^ |
@@ -410,6 +410,7 @@ CRYPTO_CTX crypto; /* Crypto ctx */ DIRRES* director; /* Director resource */ bool VSS; /* VSS used by FD */ + bool got_metadata; /* set when found job_metadata */ bool multi_restore; /* Dir can do multiple storage restore */ htable *file_list; /* Previous file list (accurate mode) */ uint64_t base_size; /* compute space saved with base job */ | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/bnet.c ^ |
@@ -418,8 +418,8 @@ memset(&hints, 0, sizeof(struct addrinfo)); hints.ai_family = family; - hints.ai_socktype = 0; - hints.ai_protocol = 0; + hints.ai_socktype = SOCK_STREAM; + hints.ai_protocol = IPPROTO_TCP; hints.ai_flags = 0; res = getaddrinfo(host, NULL, &hints, &ai); @@ -576,16 +576,14 @@ addr->set_type(IPADDR::R_MULTIPLE); addr->set_addr4(&inaddr); addr_list->append(addr); - } else #ifdef HAVE_IPV6 - if (inet_pton(AF_INET6, host, &inaddr6) > 1) { + } else if (inet_pton(AF_INET6, host, &inaddr6) == 1) { addr = New(IPADDR(AF_INET6)); addr->set_type(IPADDR::R_MULTIPLE); addr->set_addr6(&inaddr6); addr_list->append(addr); - } else #endif - { + } else { if (family != 0) { errmsg = resolv_host(family, host, addr_list); if (errmsg) { | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/bnet_server.c ^ |
@@ -64,15 +64,16 @@ } /* - Become Threaded Network Server - This function is able to handle multiple server ips in - ipv4 and ipv6 style. The Addresse are give in a comma - seperated string in bind_addr - In the moment it is inpossible to bind different ports. -*/ -void -bnet_thread_server(dlist *addrs, int max_clients, workq_t *client_wq, - void *handle_client_request(void *bsock)) + * Become Threaded Network Server + * + * This function is able to handle multiple server ips in + * ipv4 and ipv6 style. The Addresse are give in a comma + * seperated string in bind_addr + * + * At the moment it is inpossible to bind different ports. + */ +void bnet_thread_server(dlist *addr_list, int max_clients, workq_t *client_wq, + void *handle_client_request(void *bsock)) { int newsockfd, stat; socklen_t clilen; @@ -82,7 +83,7 @@ #ifdef HAVE_LIBWRAP struct request_info request; #endif - IPADDR *p; + IPADDR *ipaddr, *next; struct s_sockfd { dlink link; /* this MUST be the first item */ int fd; @@ -92,23 +93,39 @@ dlist sockfds; char allbuf[256 * 10]; - Dmsg1(100, "Addresses %s\n", build_addresses_str(addrs, allbuf, sizeof(allbuf))); - foreach_dlist(p, addrs) { + /* + * Remove any duplicate addresses. + */ + for (ipaddr = (IPADDR *)addr_list->first(); ipaddr; + ipaddr = (IPADDR *)addr_list->next(ipaddr)) { + for (next = (IPADDR *)addr_list->next(ipaddr); next; + next = (IPADDR *)addr_list->next(next)) { + if (ipaddr->get_sockaddr_len() == next->get_sockaddr_len() && + memcmp(ipaddr->get_sockaddr(), next->get_sockaddr(), + ipaddr->get_sockaddr_len()) == 0) { + addr_list->remove(next); + } + } + } + + Dmsg1(100, "Addresses %s\n", build_addresses_str(addr_list, allbuf, sizeof(allbuf))); + + foreach_dlist(ipaddr, addr_list) { /* Allocate on stack from -- no need to free */ fd_ptr = (s_sockfd *)alloca(sizeof(s_sockfd)); - fd_ptr->port = p->get_port_net_order(); + fd_ptr->port = ipaddr->get_port_net_order(); /* * Open a TCP socket */ - for (tlog= 60; (fd_ptr->fd=socket(p->get_family(), SOCK_STREAM, 0)) < 0; tlog -= 10) { + for (tlog= 60; (fd_ptr->fd=socket(ipaddr->get_family(), SOCK_STREAM, 0)) < 0; tlog -= 10) { if (tlog <= 0) { berrno be; char curbuf[256]; Emsg3(M_ABORT, 0, _("Cannot open stream socket. ERR=%s. Current %s All %s\n"), be.bstrerror(), - p->build_address_str(curbuf, sizeof(curbuf)), - build_addresses_str(addrs, allbuf, sizeof(allbuf))); + ipaddr->build_address_str(curbuf, sizeof(curbuf)), + build_addresses_str(addr_list, allbuf, sizeof(allbuf))); } bmicrosleep(10, 0); } @@ -123,7 +140,7 @@ } int tmax = 30 * (60 / 5); /* wait 30 minutes max */ - for (tlog = 0; bind(fd_ptr->fd, p->get_sockaddr(), p->get_sockaddr_len()) < 0; tlog -= 5) { + for (tlog = 0; bind(fd_ptr->fd, ipaddr->get_sockaddr(), ipaddr->get_sockaddr_len()) < 0; tlog -= 5) { berrno be; if (tlog <= 0) { tlog = 2 * 60; /* Complain every 2 minutes */ | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/bsock.c ^ |
@@ -192,7 +192,7 @@ { int sockfd = -1; dlist *addr_list; - IPADDR *ipaddr; + IPADDR *ipaddr, *next; bool connected = false; int turnon = 1; const char *errstr; @@ -212,6 +212,21 @@ return false; } + /* + * Remove any duplicate addresses. + */ + for (ipaddr = (IPADDR *)addr_list->first(); + ipaddr; ipaddr = (IPADDR *)addr_list->next(ipaddr)) { + for (next = (IPADDR *)addr_list->next(ipaddr); next; + next = (IPADDR *)addr_list->next(next)) { + if (ipaddr->get_sockaddr_len() == next->get_sockaddr_len() && + memcmp(ipaddr->get_sockaddr(), next->get_sockaddr(), + ipaddr->get_sockaddr_len()) == 0) { + addr_list->remove(next); + } + } + } + foreach_dlist(ipaddr, addr_list) { ipaddr->set_port_net(htons(port)); char allbuf[256 * 10]; @@ -224,10 +239,18 @@ berrno be; save_errno = errno; switch (errno) { +#ifdef EPFNOSUPPORT + case EPFNOSUPPORT: + /* + * The name lookup of the host returned an address in a protocol family + * we don't support. Suppress the error and try the next address. + */ + break; +#endif #ifdef EAFNOSUPPORT case EAFNOSUPPORT: /* - * The name lookup of the host returned an address in a protocol family + * The name lookup of the host returned an address in a address family * we don't support. Suppress the error and try the next address. */ break; @@ -724,11 +747,6 @@ Qmsg1(get_jcr(), M_WARNING, 0, _("Warning network buffer = %d bytes not max size.\n"), dbuf_size); } - if (dbuf_size % TAPE_BSIZE != 0) { - Qmsg1(get_jcr(), M_ABORT, 0, - _("Network buffer size %d not multiple of tape block size.\n"), - dbuf_size); - } } if (size != 0) { dbuf_size = size; @@ -748,11 +766,6 @@ Qmsg1(get_jcr(), M_WARNING, 0, _("Warning network buffer = %d bytes not max size.\n"), dbuf_size); } - if (dbuf_size % TAPE_BSIZE != 0) { - Qmsg1(get_jcr(), M_ABORT, 0, - _("Network buffer size %d not multiple of tape block size.\n"), - dbuf_size); - } } msglen = dbuf_size; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/protos.h ^ |
@@ -246,7 +246,7 @@ void register_message_callback(void msg_callback(int type, char *msg)); /* bnet_server.c */ -void bnet_thread_server(dlist *addr, int max_clients, workq_t *client_wq, +void bnet_thread_server(dlist *addr_list, int max_clients, workq_t *client_wq, void *handle_client_request(void *bsock)); void bnet_stop_thread_server(pthread_t tid); void bnet_server (int port, void handle_client_request(BSOCK *bsock)); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/rwlock.c ^ |
@@ -113,6 +113,11 @@ return (stat != 0 ? stat : (stat1 != 0 ? stat1 : stat2)); } +bool rwl_is_init(brwlock_t *rwl) +{ + return (rwl->valid == RWLOCK_VALID); +} + /* * Handle cleanup when the read lock condition variable * wait is released. | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/lib/rwlock.h ^ |
@@ -73,6 +73,7 @@ */ extern int rwl_init(brwlock_t *wrlock, int priority=0); extern int rwl_destroy(brwlock_t *rwlock); +extern bool rwl_is_init(brwlock_t *rwl); extern int rwl_readlock(brwlock_t *rwlock); extern int rwl_readtrylock(brwlock_t *rwlock); extern int rwl_readunlock(brwlock_t *rwlock); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/qt-console/bcomm/dircomm.cpp ^ |
@@ -51,6 +51,7 @@ m_conn = conn; m_in_command = 0; m_in_select = false; + m_notify = false; } DirComm::~DirComm() @@ -65,6 +66,7 @@ m_notifier->setEnabled(false); delete m_notifier; m_notifier = NULL; + m_notify = false; } if (mainWin->m_connDebug) Pmsg2(000, "DirComm %i terminating connections %s\n", m_conn, m_console->m_dir->name()); @@ -211,6 +213,7 @@ m_notifier = new QSocketNotifier(m_sock->m_fd, QSocketNotifier::Read, 0); QObject::connect(m_notifier, SIGNAL(activated(int)), this, SLOT(notify_read_dir(int))); m_notifier->setEnabled(true); + m_notify = true; write(".api 1"); m_api_set = true; @@ -454,6 +457,7 @@ m_notifier->setEnabled(false); delete m_notifier; m_notifier = NULL; + m_notify = false; } mainWin->set_status(_("Director disconnected.")); stat = BNET_HARDEOF; @@ -489,7 +493,7 @@ * * When we are in a bat dialog, we want to control *all* output * from the Directory, so we set notify to off. - * m_console->notifiy(false); + * m_console->notify(false); */ bool DirComm::notify(bool enable) { @@ -498,10 +502,9 @@ mainWin->m_notify = enable; if (m_notifier) { prev_enabled = m_notifier->isEnabled(); - if (prev_enabled != enable) { - m_notifier->setEnabled(enable); - } - if (mainWin->m_connDebug) Pmsg3(000, "conn=%i notify=%d prev=%d\n", m_conn, enable, prev_enabled); + m_notifier->setEnabled(enable); + m_notify = enable; + if (mainWin->m_connDebug) Pmsg3(000, "conn=%i set_notify=%d prev=%d\n", m_conn, enable, prev_enabled); } else if (mainWin->m_connDebug) { Pmsg2(000, "m_notifier does not exist: %i %s\n", m_conn, m_console->m_dir->name()); } @@ -510,7 +513,7 @@ bool DirComm::is_notify_enabled() const { - return mainWin->m_notify; + return m_notify; } /* | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/qt-console/bcomm/dircomm.h ^ |
@@ -79,6 +79,7 @@ bool m_at_prompt; bool m_at_main_prompt; bool m_sent_blank; + bool m_notify; int m_in_command; QSocketNotifier *m_notifier; bool m_api_set; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/qt-console/console/console.cpp ^ |
@@ -159,6 +159,7 @@ } } populateLists(conn); + notify(conn, true); } void Console::populateLists(int conn) @@ -237,13 +238,15 @@ mainWin->waitEnter(); DirComm *dircomm = m_dircommHash.value(conn); int stat; - bool prev_notify = mainWin->m_notify; + bool prev_notify = is_notify_enabled(conn); if (mainWin->m_connDebug) { QString dbgmsg = QString("dir_cmd conn %1 %2 %3\n").arg(conn).arg(m_dir->name()).arg(cmd); Pmsg1(000, "%s", dbgmsg.toUtf8().data()); } - notify(conn, false); + if (prev_notify) { + notify(conn, false); + } dircomm->write(cmd); while ((stat = dircomm->read()) > 0 && dircomm->is_in_command()) { if (mainWin->m_displayAll) display_text(dircomm->msg()); @@ -294,7 +297,7 @@ DirComm *dircomm = m_dircommHash.value(conn); int stat; POOL_MEM cmd(PM_MESSAGE); - bool prev_notify = mainWin->m_notify; + bool prev_notify = is_notify_enabled(conn); if (!is_connectedGui()) { return false; @@ -332,6 +335,9 @@ } discardToPrompt(conn); mainWin->waitExit(); + if (donotify && prev_notify) { + dircomm->notify(true); + } return !mainWin->isClosing(); /* return false if closing */ } @@ -393,12 +399,13 @@ bool Console::get_job_defaults(struct job_defaults &job_defs) { int conn; + getDirComm(conn); return get_job_defaults(conn, job_defs, true); } bool Console::get_job_defaults(int &conn, struct job_defaults &job_defs) { - return get_job_defaults(conn, job_defs, false); + return get_job_defaults(conn, job_defs, true); } /* @@ -410,14 +417,14 @@ QString scmd; int stat; char *def; - bool prev_notify = mainWin->m_notify; + bool prev_notify = is_notify_enabled(conn); bool rtn = false; + DirComm *dircomm = m_dircommHash.value(conn); if (donotify) { - conn = notifyOff(); + dircomm->notify(false); } beginNewCommand(conn); - DirComm *dircomm = m_dircommHash.value(conn); bool prevWaitState = mainWin->getWaitState(); if (!prevWaitState) mainWin->waitEnter(); @@ -714,14 +721,22 @@ bool Console::notify(int conn, bool enable) { DirComm *dircomm = m_dircommHash.value(conn); - return dircomm->notify(enable); + if (dircomm) { + return dircomm->notify(enable); + } else { + return false; + } } /* knowing a connection, return notify state */ bool Console::is_notify_enabled(int conn) const { DirComm *dircomm = m_dircommHash.value(conn); - return dircomm->is_notify_enabled(); + if (dircomm) { + return dircomm->is_notify_enabled(); + } else { + return false; + } } void Console::setDirectorTreeItem(QTreeWidgetItem *item) @@ -871,7 +886,6 @@ */ bool Console::findDirComm(int &conn) { - int i = 1; QHash<int, DirComm*>::const_iterator iter = m_dircommHash.constBegin(); while (iter != m_dircommHash.constEnd()) { DirComm *dircomm = iter.value(); @@ -881,8 +895,7 @@ } if (mainWin->m_connDebug) { Pmsg4(000, "currentDirComm=%d at_prompt=%d at_main=%d && notify=%d\n", - i, dircomm->m_at_prompt, dircomm->m_at_main_prompt, dircomm->is_notify_enabled()); - i++; + dircomm->m_conn, dircomm->m_at_prompt, dircomm->m_at_main_prompt, dircomm->is_notify_enabled()); } ++iter; } | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/stored/block.c ^ |
@@ -79,7 +79,7 @@ rhl = RECHDR1_LENGTH; } - if (block_len > 100000) { + if (block_len > 4000000) { Dmsg3(20, "Dump block %s 0x%x blocksize too big %u\n", msg, b, block_len); return; } @@ -187,7 +187,7 @@ * in the buffer should have already been reserved by * init_block. */ -static void ser_block_header(DEV_BLOCK *block, bool do_checksum) +static uint32_t ser_block_header(DEV_BLOCK *block, bool do_checksum) { ser_declare; uint32_t CheckSum = 0; @@ -212,6 +212,7 @@ Dmsg1(1390, "ser_bloc_header: checksum=%x\n", CheckSum); ser_begin(block->buf, BLKHDR2_LENGTH); ser_uint32(CheckSum); /* now add checksum to block header */ + return CheckSum; } /* @@ -318,6 +319,7 @@ block_len, BlockCheckSum, CheckSum); if (block->read_errors == 0 || verbose >= 2) { Jmsg(jcr, M_ERROR, 0, "%s", dev->errmsg); + dump_block(block, "with checksum error"); } block->read_errors++; if (!forge_on) { @@ -469,7 +471,12 @@ } } +#ifdef DEBUG_BLOCK_CHECKSUM + uint32_t checksum; + checksum = ser_block_header(block, dev->do_checksum()); +#else ser_block_header(block, dev->do_checksum()); +#endif /* Limit maximum Volume size to value specified by user */ hit_max1 = (dev->max_volume_size > 0) && @@ -549,6 +556,15 @@ } while (stat == -1 && (errno == EBUSY || errno == EIO) && retry++ < 3); +#ifdef DEBUG_BLOCK_CHECKSUM + uint32_t achecksum = ser_block_header(block, dev->do_checksum()); + if (checksum != achecksum) { + Jmsg2(jcr, M_ERROR, 0, _("Block checksum changed during write: before=%ud after=%ud\n"), + checksum, achecksum); + dump_block(block, "with checksum error"); + } +#endif + #ifdef DEBUG_BLOCK_ZEROING if (bp[0] == 0 && bp[1] == 0 && bp[2] == 0 && block->buf[12] == 0) { Jmsg0(jcr, M_ABORT, 0, _("Write block header zeroed.\n")); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/stored/read_record.c ^ |
@@ -48,7 +48,7 @@ static BSR *position_to_first_file(JCR *jcr, DCR *dcr); static bool try_repositioning(JCR *jcr, DEV_RECORD *rec, DCR *dcr); #ifdef DEBUG -static char *rec_state_to_str(DEV_RECORD *rec); +static char *rec_state_bits_to_str(DEV_RECORD *rec); #endif static const int dbglvl = 500; @@ -189,23 +189,23 @@ rec = new_record(); recs->prepend(rec); Dmsg3(dbglvl, "New record for state=%s SI=%d ST=%d\n", - rec_state_to_str(rec), + rec_state_bits_to_str(rec), block->VolSessionId, block->VolSessionTime); } - Dmsg3(dbglvl, "Before read rec loop. stat=%s blk=%d rem=%d\n", rec_state_to_str(rec), + Dmsg3(dbglvl, "Before read rec loop. stat=%s blk=%d rem=%d\n", rec_state_bits_to_str(rec), block->BlockNumber, rec->remainder); record = 0; - rec->state = 0; + rec->state_bits = 0; lastFileIndex = no_FileIndex; Dmsg1(dbglvl, "Block %s empty\n", is_block_empty(rec)?"is":"NOT"); - for (rec->state=0; ok && !is_block_empty(rec); ) { + for (rec->state_bits=0; ok && !is_block_empty(rec); ) { if (!read_record_from_block(dcr, block, rec)) { - Dmsg3(400, "!read-break. state=%s blk=%d rem=%d\n", rec_state_to_str(rec), + Dmsg3(400, "!read-break. state_bits=%s blk=%d rem=%d\n", rec_state_bits_to_str(rec), block->BlockNumber, rec->remainder); break; } - Dmsg5(dbglvl, "read-OK. state=%s blk=%d rem=%d file:block=%u:%u\n", - rec_state_to_str(rec), block->BlockNumber, rec->remainder, + Dmsg5(dbglvl, "read-OK. state_bits=%s blk=%d rem=%d file:block=%u:%u\n", + rec_state_bits_to_str(rec), block->BlockNumber, rec->remainder, dev->file, dev->block_num); /* * At this point, we have at least a record header. @@ -214,8 +214,8 @@ * get all the data. */ record++; - Dmsg6(dbglvl, "recno=%d state=%s blk=%d SI=%d ST=%d FI=%d\n", record, - rec_state_to_str(rec), block->BlockNumber, + Dmsg6(dbglvl, "recno=%d state_bits=%s blk=%d SI=%d ST=%d FI=%d\n", record, + rec_state_bits_to_str(rec), block->BlockNumber, rec->VolSessionId, rec->VolSessionTime, rec->FileIndex); if (rec->FileIndex == EOM_LABEL) { /* end of tape? */ @@ -268,7 +268,7 @@ Dmsg4(dbglvl, "BSR no match: clear rem=%d FI=%d before set_eof pos %u:%u\n", rec->remainder, rec->FileIndex, dev->file, dev->block_num); rec->remainder = 0; - rec->state &= ~REC_PARTIAL_RECORD; + rec->state_bits &= ~REC_PARTIAL_RECORD; if (try_repositioning(jcr, rec, dcr)) { break; } @@ -277,14 +277,14 @@ } dcr->VolLastIndex = rec->FileIndex; /* let caller know where we are */ if (is_partial_record(rec)) { - Dmsg6(dbglvl, "Partial, break. recno=%d state=%s blk=%d SI=%d ST=%d FI=%d\n", record, - rec_state_to_str(rec), block->BlockNumber, + Dmsg6(dbglvl, "Partial, break. recno=%d state_bits=%s blk=%d SI=%d ST=%d FI=%d\n", record, + rec_state_bits_to_str(rec), block->BlockNumber, rec->VolSessionId, rec->VolSessionTime, rec->FileIndex); break; /* read second part of record */ } - Dmsg6(dbglvl, "OK callback. recno=%d state=%s blk=%d SI=%d ST=%d FI=%d\n", record, - rec_state_to_str(rec), block->BlockNumber, + Dmsg6(dbglvl, "OK callback. recno=%d state_bits=%s blk=%d SI=%d ST=%d FI=%d\n", record, + rec_state_bits_to_str(rec), block->BlockNumber, rec->VolSessionId, rec->VolSessionTime, rec->FileIndex); if (lastFileIndex != no_FileIndex && lastFileIndex != rec->FileIndex) { if (is_this_bsr_done(jcr->bsr, rec) && try_repositioning(jcr, rec, dcr)) { @@ -369,7 +369,7 @@ if (dev_addr > bsr_addr) { return false; } - Dmsg4(10, "Try_Reposition from (file:block) %u:%u to %u:%u\n", + Dmsg4(dbglvl, "Try_Reposition from (file:block) %u:%u to %u:%u\n", dev->file, dev->block_num, file, block); dev->reposition(dcr, file, block); rec->Block = 0; @@ -437,23 +437,23 @@ } #ifdef DEBUG -static char *rec_state_to_str(DEV_RECORD *rec) +static char *rec_state_bits_to_str(DEV_RECORD *rec) { static char buf[200]; buf[0] = 0; - if (rec->state & REC_NO_HEADER) { + if (rec->state_bits & REC_NO_HEADER) { bstrncat(buf, "Nohdr,", sizeof(buf)); } if (is_partial_record(rec)) { bstrncat(buf, "partial,", sizeof(buf)); } - if (rec->state & REC_BLOCK_EMPTY) { + if (rec->state_bits & REC_BLOCK_EMPTY) { bstrncat(buf, "empty,", sizeof(buf)); } - if (rec->state & REC_NO_MATCH) { + if (rec->state_bits & REC_NO_MATCH) { bstrncat(buf, "Nomatch,", sizeof(buf)); } - if (rec->state & REC_CONTINUATION) { + if (rec->state_bits & REC_CONTINUATION) { bstrncat(buf, "cont,", sizeof(buf)); } if (buf[0]) { | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/stored/record.c ^ |
@@ -27,7 +27,7 @@ */ /* * - * record.c -- tape record handling functions + * record.c -- Volume (tape/disk) record handling functions * * Kern Sibbald, April MMI * added BB02 format October MMII @@ -246,6 +246,7 @@ rec = (DEV_RECORD *)get_memory(sizeof(DEV_RECORD)); memset(rec, 0, sizeof(DEV_RECORD)); rec->data = get_pool_memory(PM_MESSAGE); + rec->state = st_none; return rec; } @@ -255,7 +256,8 @@ rec->VolSessionId = rec->VolSessionTime = 0; rec->FileIndex = rec->Stream = 0; rec->data_len = rec->remainder = 0; - rec->state &= ~(REC_PARTIAL_RECORD|REC_BLOCK_EMPTY|REC_NO_MATCH|REC_CONTINUATION); + rec->state_bits &= ~(REC_PARTIAL_RECORD|REC_BLOCK_EMPTY|REC_NO_MATCH|REC_CONTINUATION); + rec->state = st_none; } /* @@ -273,92 +275,13 @@ Dmsg0(950, "Leave free_record.\n"); } - -/* - * Write a Record to the block - * - * Returns: false on failure (none or partially written) - * true on success (all bytes written) - * - * and remainder returned in packet. - * - * We require enough room for the header, and we deal with - * two special cases. 1. Only part of the record may have - * been transferred the last time (when remainder is - * non-zero), and 2. The remaining bytes to write may not - * all fit into the block. - */ -bool write_record_to_block(DCR *dcr, DEV_RECORD *rec) +static bool write_header_to_block(DEV_BLOCK *block, DEV_RECORD *rec) { ser_declare; - uint32_t remlen; - char buf1[100], buf2[100]; - DEV_BLOCK *block; - - block = dcr->block; - - remlen = block->buf_len - block->binbuf; - - ASSERT(block->binbuf == (uint32_t) (block->bufp - block->buf)); - ASSERT(block->buf_len >= block->binbuf); - - Dmsg6(890, "write_record_to_block() FI=%s SessId=%d Strm=%s len=%d\n" - "rem=%d remainder=%d\n", - FI_to_ascii(buf1, rec->FileIndex), rec->VolSessionId, - stream_to_ascii(buf2, rec->Stream, rec->FileIndex), rec->data_len, - remlen, rec->remainder); - - /* - * If rec->remainder is non-zero, we have been called a - * second (or subsequent) time to finish writing a record - * that did not previously fit into the block. - */ - if (rec->remainder == 0) { - /* Require enough room to write a full header */ - if (remlen >= WRITE_RECHDR_LENGTH) { - ser_begin(block->bufp, WRITE_RECHDR_LENGTH); - if (BLOCK_VER == 1) { - ser_uint32(rec->VolSessionId); - ser_uint32(rec->VolSessionTime); - } else { - block->VolSessionId = rec->VolSessionId; - block->VolSessionTime = rec->VolSessionTime; - } - ser_int32(rec->FileIndex); - ser_int32(rec->Stream); - ser_uint32(rec->data_len); - block->bufp += WRITE_RECHDR_LENGTH; - block->binbuf += WRITE_RECHDR_LENGTH; - remlen -= WRITE_RECHDR_LENGTH; - rec->remainder = rec->data_len; - if (rec->FileIndex > 0) { - /* If data record, update what we have in this block */ - if (block->FirstIndex == 0) { - block->FirstIndex = rec->FileIndex; - } - block->LastIndex = rec->FileIndex; - } - } else { - rec->remainder = rec->data_len + WRITE_RECHDR_LENGTH; - return false; - } - } else { - /* - * We are here to write unwritten bytes from a previous - * time. Presumably we have a new buffer (possibly - * containing a volume label), so the new header - * should be able to fit in the block -- otherwise we have - * an error. Note, we have to continue splitting the - * data record if it is longer than the block. - * - * First, write the header, then write as much as - * possible of the data record. - * - * Every time we write a header and it is a continuation - * of a previous partially written record, we store the - * Stream as -Stream in the record header. - */ + rec->remlen = block->buf_len - block->binbuf; + /* Require enough room to write a full header */ + if (rec->remlen >= WRITE_RECHDR_LENGTH) { ser_begin(block->bufp, WRITE_RECHDR_LENGTH); if (BLOCK_VER == 1) { ser_uint32(rec->VolSessionId); @@ -368,21 +291,13 @@ block->VolSessionTime = rec->VolSessionTime; } ser_int32(rec->FileIndex); - if (rec->remainder > rec->data_len) { - ser_int32(rec->Stream); /* normal full header */ - ser_uint32(rec->data_len); - rec->remainder = rec->data_len; /* must still do data record */ - } else { - ser_int32(-rec->Stream); /* mark this as a continuation record */ - ser_uint32(rec->remainder); /* bytes to do */ - } - - /* Require enough room to write a full header */ - ASSERT(remlen >= WRITE_RECHDR_LENGTH); + ser_int32(rec->Stream); + ser_uint32(rec->data_len); block->bufp += WRITE_RECHDR_LENGTH; block->binbuf += WRITE_RECHDR_LENGTH; - remlen -= WRITE_RECHDR_LENGTH; + rec->remlen -= WRITE_RECHDR_LENGTH; + rec->remainder = rec->data_len; if (rec->FileIndex > 0) { /* If data record, update what we have in this block */ if (block->FirstIndex == 0) { @@ -390,55 +305,186 @@ } block->LastIndex = rec->FileIndex; } + } else { + rec->remainder = rec->data_len + WRITE_RECHDR_LENGTH; + return false; } - if (remlen == 0) { - return false; /* partial transfer */ - } + return true; +} +static void write_continue_header_to_block(DEV_BLOCK *block, DEV_RECORD *rec) +{ + ser_declare; + + rec->remlen = block->buf_len - block->binbuf; /* - * Now deal with data record. - * Part of it may have already been transferred, and we - * may not have enough room to transfer the whole this time. + * We have unwritten bytes from a previous + * time. Presumably we have a new buffer (possibly + * containing a volume label), so the new header + * should be able to fit in the block -- otherwise we have + * an error. Note, we have to continue splitting the + * data record if it is longer than the block. + * + * First, write the header. + * + * Every time we write a header and it is a continuation + * of a previous partially written record, we store the + * Stream as -Stream in the record header. */ - if (rec->remainder > 0) { - /* Write as much of data as possible */ - if (remlen >= rec->remainder) { - memcpy(block->bufp, rec->data+rec->data_len-rec->remainder, - rec->remainder); - block->bufp += rec->remainder; - block->binbuf += rec->remainder; - } else { - memcpy(block->bufp, rec->data+rec->data_len-rec->remainder, - remlen); + ser_begin(block->bufp, WRITE_RECHDR_LENGTH); + if (BLOCK_VER == 1) { + ser_uint32(rec->VolSessionId); + ser_uint32(rec->VolSessionTime); + } else { + block->VolSessionId = rec->VolSessionId; + block->VolSessionTime = rec->VolSessionTime; + } + ser_int32(rec->FileIndex); + if (rec->remainder > rec->data_len) { + ser_int32(rec->Stream); /* normal full header */ + ser_uint32(rec->data_len); + rec->remainder = rec->data_len; /* must still do data record */ + } else { + ser_int32(-rec->Stream); /* mark this as a continuation record */ + ser_uint32(rec->remainder); /* bytes to do */ + } + + /* Require enough room to write a full header */ + ASSERT(rec->remlen >= WRITE_RECHDR_LENGTH); + + block->bufp += WRITE_RECHDR_LENGTH; + block->binbuf += WRITE_RECHDR_LENGTH; + rec->remlen -= WRITE_RECHDR_LENGTH; + if (rec->FileIndex > 0) { + /* If data record, update what we have in this block */ + if (block->FirstIndex == 0) { + block->FirstIndex = rec->FileIndex; + } + block->LastIndex = rec->FileIndex; + } +} + +static bool write_data_to_block(DEV_BLOCK *block, DEV_RECORD *rec) +{ + rec->remlen = block->buf_len - block->binbuf; + /* Write as much of data as possible */ + if (rec->remlen >= rec->remainder) { + memcpy(block->bufp, rec->data+rec->data_len-rec->remainder, + rec->remainder); + block->bufp += rec->remainder; + block->binbuf += rec->remainder; + } else { + memcpy(block->bufp, rec->data+rec->data_len-rec->remainder, + rec->remlen); #ifdef xxxxxSMCHECK - if (!sm_check_rtn(__FILE__, __LINE__, False)) { - /* We damaged a buffer */ - Dmsg6(0, "Damaged block FI=%s SessId=%d Strm=%s len=%d\n" - "rem=%d remainder=%d\n", - FI_to_ascii(buf1, rec->FileIndex), rec->VolSessionId, - stream_to_ascii(buf2, rec->Stream, rec->FileIndex), rec->data_len, - remlen, rec->remainder); - Dmsg5(0, "Damaged block: bufp=%x binbuf=%d buf_len=%d rem=%d moved=%d\n", - block->bufp, block->binbuf, block->buf_len, block->buf_len-block->binbuf, - remlen); - Dmsg2(0, "Damaged block: buf=%x binbuffrombuf=%d \n", - block->buf, block->bufp-block->buf); + if (!sm_check_rtn(__FILE__, __LINE__, False)) { + /* We damaged a buffer */ + Dmsg6(0, "Damaged block FI=%s SessId=%d Strm=%s len=%d\n" + "rem=%d remainder=%d\n", + FI_to_ascii(buf1, rec->FileIndex), rec->VolSessionId, + stream_to_ascii(buf2, rec->Stream, rec->FileIndex), rec->data_len, + rec->remlen, rec->remainder); + Dmsg5(0, "Damaged block: bufp=%x binbuf=%d buf_len=%d rem=%d moved=%d\n", + block->bufp, block->binbuf, block->buf_len, block->buf_len-block->binbuf, + rec->remlen); + Dmsg2(0, "Damaged block: buf=%x binbuffrombuf=%d \n", + block->buf, block->bufp-block->buf); + Emsg0(M_ABORT, 0, _("Damaged buffer\n")); + } +#endif - Emsg0(M_ABORT, 0, _("Damaged buffer\n")); + block->bufp += rec->remlen; + block->binbuf += rec->remlen; + rec->remainder -= rec->remlen; + return false; /* did partial transfer */ + } + return true; +} +/* + * Write a Record to the block + * + * Returns: false on failure (none or partially written) + * true on success (all bytes written) + * + * and remainder returned in packet. + * + * We require enough room for the header, and we deal with + * two special cases. 1. Only part of the record may have + * been transferred the last time (when remainder is + * non-zero), and 2. The remaining bytes to write may not + * all fit into the block. + */ +bool write_record_to_block(DCR *dcr, DEV_RECORD *rec) +{ + char buf1[100], buf2[100]; + DEV_BLOCK *block = dcr->block; + + for ( ;; ) { + ASSERT(block->binbuf == (uint32_t)(block->bufp - block->buf)); + ASSERT(block->buf_len >= block->binbuf); + + Dmsg6(890, "write_record_to_block() FI=%s SessId=%d Strm=%s len=%d\n" + "rem=%d remainder=%d\n", + FI_to_ascii(buf1, rec->FileIndex), rec->VolSessionId, + stream_to_ascii(buf2, rec->Stream, rec->FileIndex), rec->data_len, + rec->remlen, rec->remainder); + + switch (rec->state) { + case st_none: + /* Figure out what to do */ + rec->state = st_header; + continue; /* go to next state */ + + case st_header: + /* + * Write header + * + * If rec->remainder is non-zero, we have been called a + * second (or subsequent) time to finish writing a record + * that did not previously fit into the block. + */ + if (!write_header_to_block(block, rec)) { + return false; /* write block then come back here */ + } + rec->state = st_data; /* after header, now write data */ + continue; + + /* Write continuation header */ + case st_header_cont: + write_continue_header_to_block(block, rec); + rec->state = st_data; + if (rec->remlen == 0) { + return false; /* partial transfer */ } -#endif + continue; - block->bufp += remlen; - block->binbuf += remlen; - rec->remainder -= remlen; - return false; /* did partial transfer */ + /* Write normal data */ + case st_data: + /* + * Write data + * + * Part of it may have already been transferred, and we + * may not have enough room to transfer the whole this time. + */ + if (rec->remainder > 0) { + if (!write_data_to_block(block, rec)) { + rec->state = st_header_cont; + return false; + } + } + rec->remainder = 0; /* did whole transfer */ + rec->state = st_none; + return true; + + default: + Dmsg0(000, "Something went wrong. Default state.\n"); + rec->state = st_none; + return true; } } - rec->remainder = 0; /* did whole transfer */ return true; } - /* * Test if we can write whole record to the block * @@ -494,9 +540,9 @@ remlen = block->binbuf; /* Clear state flags */ - rec->state = 0; + rec->state_bits = 0; if (block->dev->is_tape()) { - rec->state |= REC_ISTAPE; + rec->state_bits |= REC_ISTAPE; } rec->Block = ((DEVICE *)block->dev)->EndBlock; rec->File = ((DEVICE *)block->dev)->EndFile; @@ -537,7 +583,7 @@ */ if (rec->remainder && (rec->VolSessionId != VolSessionId || rec->VolSessionTime != VolSessionTime)) { - rec->state |= REC_NO_MATCH; + rec->state_bits |= REC_NO_MATCH; Dmsg0(450, "remainder and VolSession doesn't match\n"); return false; /* This is from some other Session */ } @@ -548,11 +594,11 @@ if (Stream < 0) { /* continuation record? */ Dmsg1(500, "Got negative Stream => continuation. remainder=%d\n", rec->remainder); - rec->state |= REC_CONTINUATION; + rec->state_bits |= REC_CONTINUATION; if (!rec->remainder) { /* if we didn't read previously */ rec->data_len = 0; /* return data as if no continuation */ } else if (rec->Stream != -Stream) { - rec->state |= REC_NO_MATCH; + rec->state_bits |= REC_NO_MATCH; return false; /* This is from some other Session */ } rec->Stream = -Stream; /* set correct Stream */ @@ -587,7 +633,7 @@ * then reread. */ Dmsg0(450, "read_record_block: nothing\n"); - rec->state |= (REC_NO_HEADER | REC_BLOCK_EMPTY); + rec->state_bits |= (REC_NO_HEADER | REC_BLOCK_EMPTY); empty_block(block); /* mark block empty */ return false; } @@ -598,7 +644,7 @@ * Something is wrong, force read of next block, abort * continuing with this block. */ - rec->state |= (REC_NO_HEADER | REC_BLOCK_EMPTY); + rec->state_bits |= (REC_NO_HEADER | REC_BLOCK_EMPTY); empty_block(block); Jmsg2(dcr->jcr, M_WARNING, 0, _("Sanity check failed. maxlen=%d datalen=%d. Block discarded.\n"), MAX_BLOCK_LENGTH, data_bytes); @@ -629,7 +675,7 @@ rec->data_len += remlen; rec->remainder = 1; /* partial record transferred */ Dmsg1(450, "read_record_block: partial xfered=%d\n", rec->data_len); - rec->state |= (REC_PARTIAL_RECORD | REC_BLOCK_EMPTY); + rec->state_bits |= (REC_PARTIAL_RECORD | REC_BLOCK_EMPTY); return true; } rec->remainder = 0; | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/stored/record.h ^ |
@@ -50,6 +50,13 @@ VOL_NO_MEDIA /* Hard error -- no media present */ }; +enum rec_state { + st_none, /* No state */ + st_header, /* Write header */ + st_header_cont, + st_data, +}; + /* See block.h for RECHDR_LENGTH */ @@ -78,8 +85,8 @@ #define REC_CONTINUATION (1<<4) /* Continuation record found */ #define REC_ISTAPE (1<<5) /* Set if device is tape */ -#define is_partial_record(r) ((r)->state & REC_PARTIAL_RECORD) -#define is_block_empty(r) ((r)->state & REC_BLOCK_EMPTY) +#define is_partial_record(r) ((r)->state_bits & REC_PARTIAL_RECORD) +#define is_block_empty(r) ((r)->state_bits & REC_BLOCK_EMPTY) /* * DEV_RECORD for reading and writing records. @@ -102,7 +109,9 @@ int32_t maskedStream; /* Masked Stream without high bits */ uint32_t data_len; /* current record length */ uint32_t remainder; /* remaining bytes to read/write */ - uint32_t state; /* state bits */ + uint32_t remlen; /* temp remainder bytes */ + uint32_t state_bits; /* state bits */ + rec_state state; /* state of write_record_to_block */ BSR *bsr; /* pointer to bsr that matched */ uint8_t ser_buf[WRITE_RECHDR_LENGTH]; /* serialized record header goes here */ POOLMEM *data; /* Record data. This MUST be a memory pool item */ | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/stored/stored.c ^ |
@@ -85,7 +85,7 @@ fprintf(stderr, _( PROG_COPYRIGHT "\nVersion: %s (%s)\n\n" -"Usage: stored [options] [-c config_file] [config_file]\n" +"Usage: bacula-sd [options] [-c config_file] [config_file]\n" " -c <file> use <file> as configuration file\n" " -d <nn> set debug level to <nn>\n" " -dt print timestamp in debug output\n" | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/version.h ^ |
@@ -1,8 +1,8 @@ #undef VERSION -#define VERSION "5.2.9" -#define BDATE "11 June 2012" -#define LSMDATE "11Jun12" +#define VERSION "5.2.10" +#define BDATE "28 June 2012" +#define LSMDATE "28Jun12" #define PROG_COPYRIGHT "Copyright (C) %d-2012 Free Software Foundation Europe e.V.\n" #define BYEAR "2012" /* year for copyright messages in progs */ @@ -144,6 +144,7 @@ /* #define TRACE_RES 1 */ /* #define DEBUG_MEMSET 1 */ /* #define DEBUG_MUTEX 1 */ +/* #define DEBUG_BLOCK_CHECKSUM 1 */ #define BEEF 0 /* | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/compat/compat.cpp ^ |
@@ -2733,3 +2733,18 @@ DeregisterEventSource(eventHandler); } } + +/* + * Don't allow OS to suspend while backup running + * Note, the OS automatically tracks these for each thread + */ +void prevent_os_suspensions() +{ + /* not in mingw */ +// SetThreadExecutionState(ES_CONTINUOUS | ES_SYSTEM_REQUIRED); +} + +void allow_os_suspensions() +{ +// SetThreadExecutionState(ES_CONTINUOUS); +} | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/compat/mingwconfig.h ^ |
@@ -49,13 +49,13 @@ /* #undef HAVE_SYS_BITYPES_H */ /* Define if you have zlib */ -/* #define HAVE_LIBZ 1 */ +#define HAVE_LIBZ 1 /* Define if you have lzo lib */ -/* #define HAVE_LZO 1 */ +/* #define HAVE_LZO 1 */ /* Define to 1 if you have the <lzo/lzoconf.h> header file. */ -/* #define HAVE_LZO_LZOCONF_H 1 */ +/* #define HAVE_LZO_LZOCONF_H 1 */ /* File daemon specif libraries */ | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/filed/vss.cpp ^ |
@@ -50,7 +50,6 @@ static const GUID VSS_SWPRV_ProviderID = { 0xb5946137, 0x7b9f, 0x4925, { 0xaf, 0x80, 0x51, 0xab, 0xd6, 0x0b, 0x20, 0xd5 } }; - void VSSCleanup() { @@ -102,17 +101,10 @@ // Constructor VSSClient::VSSClient() { - m_bCoInitializeCalled = false; - m_bCoInitializeSecurityCalled = false; - m_dwContext = 0; // VSS_CTX_BACKUP; - m_bDuringRestore = false; - m_bBackupIsInitialized = false; - m_pVssObject = NULL; + memset(this, 0, sizeof(VSSClient)); m_pAlistWriterState = New(alist(10, not_owned_by_alist)); m_pAlistWriterInfoText = New(alist(10, owned_by_alist)); m_uidCurrentSnapshotSet = GUID_NULL; - memset(m_wszUniqueVolumeName, 0, sizeof(m_wszUniqueVolumeName)); - memset(m_szShadowCopyName, 0, sizeof(m_szShadowCopyName)); } // Destructor @@ -121,7 +113,7 @@ // Release the IVssBackupComponents interface // WARNING: this must be done BEFORE calling CoUninitialize() if (m_pVssObject) { - m_pVssObject->Release(); +// m_pVssObject->Release(); m_pVssObject = NULL; } @@ -130,8 +122,9 @@ delete m_pAlistWriterInfoText; // Call CoUninitialize if the CoInitialize was performed successfully - if (m_bCoInitializeCalled) + if (m_bCoInitializeCalled) { CoUninitialize(); + } } bool VSSClient::InitializeForBackup(JCR *jcr) @@ -142,11 +135,11 @@ } -bool VSSClient::InitializeForRestore(JCR *jcr, bool (*VssInitCallback)(JCR *, int), WCHAR *job_metadata) +bool VSSClient::InitializeForRestore(JCR *jcr) { - m_metadata = job_metadata; + m_metadata = NULL; m_jcr = jcr; - return Initialize(0, true/*=>Restore*/, VssInitCallback); + return Initialize(0, true/*=>Restore*/); } bool VSSClient::GetShadowPath(const char *szFilePath, char *szShadowPath, int nBuflen) | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/filed/vss.h ^ |
@@ -60,7 +60,7 @@ // Backup Process bool InitializeForBackup(JCR *jcr); - bool InitializeForRestore(JCR *jcr, bool (*VssInitCallback)(JCR *, int) = NULL, WCHAR *job_metadata = NULL); + bool InitializeForRestore(JCR *jcr); virtual bool CreateSnapshots(char* szDriveLetters) = 0; virtual bool CloseBackup() = 0; virtual bool CloseRestore() = 0; @@ -79,7 +79,7 @@ IUnknown *GetVssObject() { return m_pVssObject; }; private: - virtual bool Initialize(DWORD dwContext, bool bDuringRestore = FALSE, bool (*VssInitCallback)(JCR *, int) = NULL) = 0; + virtual bool Initialize(DWORD dwContext, bool bDuringRestore = FALSE) = 0; virtual bool WaitAndCheckForAsyncOperation(IVssAsync* pAsync) = 0; virtual void QuerySnapshotSet(GUID snapshotSetID) = 0; @@ -103,6 +103,7 @@ bool m_bCoInitializeSecurityCalled; bool m_bDuringRestore; /* true if we are doing a restore */ bool m_bBackupIsInitialized; + bool m_bWriterStatusCurrent; WCHAR *m_metadata; }; @@ -122,7 +123,7 @@ virtual const char* GetDriverName() { return "Win32 VSS"; }; #endif private: - virtual bool Initialize(DWORD dwContext, bool bDuringRestore, bool (*VssInitCallback)(JCR *, int) = NULL); + virtual bool Initialize(DWORD dwContext, bool bDuringRestore); virtual bool WaitAndCheckForAsyncOperation(IVssAsync* pAsync); virtual void QuerySnapshotSet(GUID snapshotSetID); bool CheckWriterStatus(); @@ -143,7 +144,7 @@ virtual const char* GetDriverName() { return "Win32 VSS"; }; #endif private: - virtual bool Initialize(DWORD dwContext, bool bDuringRestore, bool (*VssInitCallback)(JCR *, int) = NULL); + virtual bool Initialize(DWORD dwContext, bool bDuringRestore); virtual bool WaitAndCheckForAsyncOperation(IVssAsync* pAsync); virtual void QuerySnapshotSet(GUID snapshotSetID); bool CheckWriterStatus(); @@ -164,7 +165,7 @@ virtual const char* GetDriverName() { return "Win32 VSS"; }; #endif private: - virtual bool Initialize(DWORD dwContext, bool bDuringRestore, bool (*VssInitCallback)(JCR *, int) = NULL); + virtual bool Initialize(DWORD dwContext, bool bDuringRestore); virtual bool WaitAndCheckForAsyncOperation(IVssAsync* pAsync); virtual void QuerySnapshotSet(GUID snapshotSetID); bool CheckWriterStatus(); | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/filed/vss_generic.cpp ^ |
@@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2005-2012 Free Software Foundation Europe e.V. + Copyright (C) 2005-2010 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. @@ -87,7 +87,6 @@ #ifdef B_VSS_XP #define VSSClientGeneric VSSClientXP - #include "inc/WinXP/vss.h" #include "inc/WinXP/vswriter.h" #include "inc/WinXP/vsbackup.h" @@ -96,7 +95,6 @@ #ifdef B_VSS_W2K3 #define VSSClientGeneric VSSClient2003 - #include "inc/Win2003/vss.h" #include "inc/Win2003/vswriter.h" #include "inc/Win2003/vsbackup.h" @@ -104,7 +102,6 @@ #ifdef B_VSS_VISTA #define VSSClientGeneric VSSClientVista - #include "inc/Win2003/vss.h" #include "inc/Win2003/vswriter.h" #include "inc/Win2003/vsbackup.h" @@ -117,9 +114,122 @@ static t_CreateVssBackupComponents p_CreateVssBackupComponents = NULL; static t_VssFreeSnapshotProperties p_VssFreeSnapshotProperties = NULL; +#include "vss.h" + +static void JmsgVssApiStatus(JCR *jcr, int msg_status, HRESULT hr, const char *apiName) +{ + const char *errmsg; + if (hr == S_OK || hr == VSS_S_ASYNC_FINISHED) { + return; + } + switch (hr) { + case E_INVALIDARG: + errmsg = "One of the parameter values is not valid."; + break; + case E_OUTOFMEMORY: + errmsg = "The caller is out of memory or other system resources."; + break; + case E_ACCESSDENIED: + errmsg = "The caller does not have sufficient backup privileges or is not an administrator."; + break; + case VSS_E_INVALID_XML_DOCUMENT: + errmsg = "The XML document is not valid."; + break; + case VSS_E_OBJECT_NOT_FOUND: + errmsg = "The specified file does not exist."; + break; + case VSS_E_BAD_STATE: + errmsg = "Object is not initialized; called during restore or not called in correct sequence."; + break; + case VSS_E_WRITER_INFRASTRUCTURE: + errmsg = "The writer infrastructure is not operating properly. Check that the Event Service and VSS have been started, and check for errors associated with those services in the error log."; + break; + case VSS_S_ASYNC_CANCELLED: + errmsg = "The asynchronous operation was canceled by a previous call to IVssAsync::Cancel."; + break; + case VSS_S_ASYNC_PENDING: + errmsg = "The asynchronous operation is still running."; + break; + case RPC_E_CHANGED_MODE: + errmsg = "Previous call to CoInitializeEx specified the multithread apartment (MTA). This call indicates single-threaded apartment has occurred."; + break; + case S_FALSE: + errmsg = "No writer found for the current component."; + break; + default: + errmsg = "Unexpected error. The error code is logged in the error log file."; + break; + } + Jmsg(jcr, msg_status, 0, "VSS API failure calling \"%s\". ERR=%s\n", apiName, errmsg); +} + +#ifndef VSS_WS_FAILED_AT_BACKUPSHUTDOWN +#define VSS_WS_FAILED_AT_BACKUPSHUTDOWN (VSS_WRITER_STATE)15 +#endif -#include "vss.h" +static void JmsgVssWriterStatus(JCR *jcr, int msg_status, VSS_WRITER_STATE eWriterStatus, char *writer_name) +{ + const char *errmsg; + + /* The following are normal states */ + if (eWriterStatus == VSS_WS_STABLE || + eWriterStatus == VSS_WS_WAITING_FOR_BACKUP_COMPLETE) { + return; + } + + /* Potential errors */ + switch (eWriterStatus) { + default: + case VSS_WS_UNKNOWN: + errmsg = "The writer's state is not known. This is a writer error."; + break; + case VSS_WS_WAITING_FOR_FREEZE: + errmsg = "The writer is waiting for the freeze state."; + break; + case VSS_WS_WAITING_FOR_THAW: + errmsg = "The writer is waiting for the thaw state."; + break; + case VSS_WS_WAITING_FOR_POST_SNAPSHOT: + errmsg = "The writer is waiting for the PostSnapshot state."; + break; + case VSS_WS_WAITING_FOR_BACKUP_COMPLETE: + errmsg = "The writer is waiting for the requester to finish its backup operation."; + break; + case VSS_WS_FAILED_AT_IDENTIFY: + errmsg = "The writer vetoed the shadow copy creation process at the writer identification state."; + break; + case VSS_WS_FAILED_AT_PREPARE_BACKUP: + errmsg = "The writer vetoed the shadow copy creation process during the backup preparation state."; + break; + case VSS_WS_FAILED_AT_PREPARE_SNAPSHOT: + errmsg = "The writer vetoed the shadow copy creation process during the PrepareForSnapshot state."; + break; + case VSS_WS_FAILED_AT_FREEZE: + errmsg = "The writer vetoed the shadow copy creation process during the freeze state."; + break; + case VSS_WS_FAILED_AT_THAW: + errmsg = "The writer vetoed the shadow copy creation process during the thaw state."; + break; + case VSS_WS_FAILED_AT_POST_SNAPSHOT: + errmsg = "The writer vetoed the shadow copy creation process during the PostSnapshot state."; + break; + case VSS_WS_FAILED_AT_BACKUP_COMPLETE: + errmsg = "The shadow copy has been created and the writer failed during the BackupComplete state."; + break; + case VSS_WS_FAILED_AT_PRE_RESTORE: + errmsg = "The writer failed during the PreRestore state."; + break; + case VSS_WS_FAILED_AT_POST_RESTORE: + errmsg = "The writer failed during the PostRestore state."; + break; + case VSS_WS_FAILED_AT_BACKUPSHUTDOWN: + errmsg = "The writer failed during the shutdown of the backup application."; + + } + Jmsg(jcr, msg_status, 0, "VSS Writer \"%s\" has invalid state. ERR=%s\n", writer_name, errmsg); +} + /* * @@ -131,10 +241,12 @@ // Append a backslash to the current string inline wstring AppendBackslash(wstring str) { - if (str.length() == 0) + if (str.length() == 0) { return wstring(L"\\"); - if (str[str.length() - 1] == L'\\') + } + if (str[str.length() - 1] == L'\\') { return str; + } return str.append(L"\\"); } @@ -153,16 +265,19 @@ wchar_t volumeName[MAX_PATH]; wchar_t volumeUniqueName[MAX_PATH]; - if (!p_GetVolumePathNameW || !p_GetVolumePathNameW((LPCWSTR)path.c_str(), volumeRootPath, MAX_PATH)) - return L""; + if (!p_GetVolumePathNameW || !p_GetVolumePathNameW((LPCWSTR)path.c_str(), volumeRootPath, MAX_PATH)) { + return L""; + } // Get the volume name alias (might be different from the unique volume name in rare cases) - if (!p_GetVolumeNameForVolumeMountPointW || !p_GetVolumeNameForVolumeMountPointW(volumeRootPath, volumeName, MAX_PATH)) + if (!p_GetVolumeNameForVolumeMountPointW || !p_GetVolumeNameForVolumeMountPointW(volumeRootPath, volumeName, MAX_PATH)) { return L""; + } // Get the unique volume name - if (!p_GetVolumeNameForVolumeMountPointW(volumeName, volumeUniqueName, MAX_PATH)) + if (!p_GetVolumeNameForVolumeMountPointW(volumeName, volumeUniqueName, MAX_PATH)) { return L""; + } return volumeUniqueName; } @@ -194,7 +309,6 @@ CHECK_CASE_FOR_CONSTANT(VSS_WS_FAILED_AT_BACKUP_COMPLETE); CHECK_CASE_FOR_CONSTANT(VSS_WS_FAILED_AT_PRE_RESTORE); CHECK_CASE_FOR_CONSTANT(VSS_WS_FAILED_AT_POST_RESTORE); - default: return L"Error or Undefined"; } @@ -226,20 +340,21 @@ // Destructor VSSClientGeneric::~VSSClientGeneric() { - if (m_hLib) + if (m_hLib) { FreeLibrary(m_hLib); + } } // Initialize the COM infrastructure and the internal pointers -bool VSSClientGeneric::Initialize(DWORD dwContext, bool bDuringRestore, - bool (*VssInitCallback)(JCR *, int)) +bool VSSClientGeneric::Initialize(DWORD dwContext, bool bDuringRestore) { CComPtr<IVssAsync> pAsync1; VSS_BACKUP_TYPE backup_type; + IVssBackupComponents* pVssObj = (IVssBackupComponents*)m_pVssObject; if (!(p_CreateVssBackupComponents && p_VssFreeSnapshotProperties)) { - Dmsg2(0, "VSSClientGeneric::Initialize: p_CreateVssBackupComponents = 0x%08X, p_VssFreeSnapshotProperties = 0x%08X\n", p_CreateVssBackupComponents, p_VssFreeSnapshotProperties); - errno = ENOSYS; + Dmsg2(0, "VSSClientGeneric::Initialize: p_CreateVssBackupComponents=0x%08X, p_VssFreeSnapshotProperties=0x%08X\n", p_CreateVssBackupComponents, p_VssFreeSnapshotProperties); + Jmsg(m_jcr, M_FATAL, 0, "Entry point CreateVssBackupComponents or VssFreeSnapshotProperties missing.\n"); return false; } @@ -249,6 +364,7 @@ hr = CoInitialize(NULL); if (FAILED(hr)) { Dmsg1(0, "VSSClientGeneric::Initialize: CoInitialize returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "CoInitialize"); errno = b_errno_win32; return false; } @@ -272,50 +388,58 @@ if (FAILED(hr)) { Dmsg1(0, "VSSClientGeneric::Initialize: CoInitializeSecurity returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "CoInitializeSecurity"); errno = b_errno_win32; return false; } m_bCoInitializeSecurityCalled = true; } - // Release the IVssBackupComponents interface - if (m_pVssObject) { - m_pVssObject->Release(); + // Release the any old IVssBackupComponents interface + if (pVssObj) { + pVssObj->Release(); m_pVssObject = NULL; } - // Create the internal backup components object - hr = p_CreateVssBackupComponents((IVssBackupComponents**) &m_pVssObject); + // Create new internal backup components object + hr = p_CreateVssBackupComponents((IVssBackupComponents**)&m_pVssObject); if (FAILED(hr)) { - Dmsg1(0, "VSSClientGeneric::Initialize: CreateVssBackupComponents returned 0x%08X.\n", - hr); + berrno be; + Dmsg2(0, "VSSClientGeneric::Initialize: CreateVssBackupComponents returned 0x%08X. ERR=%s\n", + hr, be.bstrerror(b_errno_win32)); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "CreateVssBackupComponents"); errno = b_errno_win32; return false; } + /* Define shorthand VssObject with time */ + pVssObj = (IVssBackupComponents*)m_pVssObject; + + + if (!bDuringRestore) { #if defined(B_VSS_W2K3) || defined(B_VSS_VISTA) - if (dwContext != VSS_CTX_BACKUP) { - hr = ((IVssBackupComponents*) m_pVssObject)->SetContext(dwContext); - if (FAILED(hr)) { - Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->SetContext returned 0x%08X\n", hr); - errno = b_errno_win32; - return false; + if (dwContext != VSS_CTX_BACKUP) { + hr = pVssObj->SetContext(dwContext); + if (FAILED(hr)) { + Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->SetContext returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "SetContext"); + errno = b_errno_win32; + return false; + } } - } #endif - if (!bDuringRestore) { // 1. InitializeForBackup - hr = ((IVssBackupComponents*) m_pVssObject)->InitializeForBackup(); + hr = pVssObj->InitializeForBackup(); if (FAILED(hr)) { Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->InitializeForBackup returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "InitializeForBackup"); errno = b_errno_win32; return false; } // 2. SetBackupState - switch (m_jcr->getJobLevel()) - { + switch (m_jcr->getJobLevel()) { case L_FULL: backup_type = VSS_BT_FULL; break; @@ -330,60 +454,25 @@ backup_type = VSS_BT_FULL; break; } - hr = ((IVssBackupComponents*) m_pVssObject)->SetBackupState(true, true, backup_type, false); + hr = pVssObj->SetBackupState(true, true, backup_type, false); /* FIXME: need to support partial files - make last parameter true when done */ if (FAILED(hr)) { Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->SetBackupState returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "SetBackupState"); errno = b_errno_win32; return false; } // 3. GatherWriterMetaData - hr = ((IVssBackupComponents*) m_pVssObject)->GatherWriterMetadata(&pAsync1.p); + hr = pVssObj->GatherWriterMetadata(&pAsync1.p); if (FAILED(hr)) { Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->GatherWriterMetadata returned 0x%08X\n", hr); + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "GatherWriterMetadata"); errno = b_errno_win32; return false; } // Waits for the async operation to finish and checks the result - WaitAndCheckForAsyncOperation(pAsync1.p); - } else { - - /* - * Initialize for restore - */ - - HRESULT hr; - - // 1. InitializeForRestore - hr = ((IVssBackupComponents*) m_pVssObject)->InitializeForRestore(m_metadata); - if (FAILED(hr)) { - Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->InitializeForRestore returned 0x%08X\n", hr); - errno = b_errno_win32; - return false; - } - VssInitCallback(m_jcr, VSS_INIT_RESTORE_AFTER_INIT); - - // 2. GatherWriterMetaData - hr = ((IVssBackupComponents*) m_pVssObject)->GatherWriterMetadata(&pAsync1.p); - if (FAILED(hr)) { - Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->GatherWriterMetadata returned 0x%08X\n", hr); - errno = b_errno_win32; - return false; - } - WaitAndCheckForAsyncOperation(pAsync1.p); - VssInitCallback(m_jcr, VSS_INIT_RESTORE_AFTER_GATHER); - - // 3. PreRestore - hr = ((IVssBackupComponents*) m_pVssObject)->PreRestore(&pAsync1.p); - if (FAILED(hr)) { - Dmsg1(0, "VSSClientGeneric::Initialize: IVssBackupComponents->PreRestore returned 0x%08X\n", hr); - errno = b_errno_win32; - return false; - } - WaitAndCheckForAsyncOperation(pAsync1.p); - /* get latest info about writer status */ - if (!CheckWriterStatus()) { - Dmsg0(0, "VSSClientGeneric::InitializePostPlugin: Failed to CheckWriterstatus\n"); + if (!WaitAndCheckForAsyncOperation(pAsync1.p)) { + /* Error message already printed */ errno = b_errno_win32; return false; } @@ -414,59 +503,50 @@ int queryErrors = 0; do { - if (hrReturned != S_OK) + if (hrReturned != S_OK) { Sleep(1000); - + } hrReturned = S_OK; hr = pAsync->QueryStatus(&hrReturned, NULL); - - if (FAILED(hr)) + if (FAILED(hr)) { queryErrors++; + } } while ((timeout-- > 0) && (hrReturned == VSS_S_ASYNC_PENDING)); - if (hrReturned == VSS_S_ASYNC_FINISHED) + if (hrReturned == VSS_S_ASYNC_FINISHED) { return true; - - -#ifdef xDEBUG - // Check if the async operation succeeded... - if(hrReturned != VSS_S_ASYNC_FINISHED) { - wchar_t *pwszBuffer = NULL; - /* I don't see the usefulness of the following -- KES */ - FormatMessageW( - FORMAT_MESSAGE_ALLOCATE_BUFFER - | FORMAT_MESSAGE_FROM_SYSTEM - | FORMAT_MESSAGE_IGNORE_INSERTS, - NULL, hrReturned, - MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), - (LPWSTR)&pwszBuffer, 0, NULL); - - LocalFree(pwszBuffer); - errno = b_errno_win32; } -#endif - + + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "Query Async Status after 10 minute wait"); return false; } bool VSSClientGeneric::CreateSnapshots(char* szDriveLetters) { + IVssBackupComponents *pVssObj; + HRESULT hr; + /* szDriveLetters contains all drive letters in uppercase */ /* if a drive can not being added, it's converted to lowercase in szDriveLetters */ /* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vss/base/ivssbackupcomponents_startsnapshotset.asp */ - if (!m_pVssObject || m_bBackupIsInitialized) { + Jmsg(m_jcr, M_FATAL, 0, "No pointer to VssObject or Backup is not Initialized\n"); errno = ENOSYS; return false; } m_uidCurrentSnapshotSet = GUID_NULL; - IVssBackupComponents *pVss = (IVssBackupComponents*)m_pVssObject; + pVssObj = (IVssBackupComponents*)m_pVssObject; /* startSnapshotSet */ - - pVss->StartSnapshotSet(&m_uidCurrentSnapshotSet); + hr = pVssObj->StartSnapshotSet(&m_uidCurrentSnapshotSet); + if (FAILED(hr)) { + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "StartSnapshotSet"); + errno = ENOSYS; + return false; + } + /* AddToSnapshotSet */ @@ -484,37 +564,53 @@ szDrive[0] = szDriveLetters[i]; volume = GetUniqueVolumeNameForPath(szDrive); // store uniquevolumname - if (SUCCEEDED(pVss->AddToSnapshotSet((LPWSTR)volume.c_str(), GUID_NULL, &pid))) { + if (SUCCEEDED(pVssObj->AddToSnapshotSet((LPWSTR)volume.c_str(), GUID_NULL, &pid))) { wcsncpy (m_wszUniqueVolumeName[szDriveLetters[i]-'A'], (LPWSTR) volume.c_str(), MAX_PATH); } else { - szDriveLetters[i] = tolower (szDriveLetters[i]); + szDriveLetters[i] = tolower(szDriveLetters[i]); } } /* PrepareForBackup */ - if (FAILED(pVss->PrepareForBackup(&pAsync1.p))) { + hr = pVssObj->PrepareForBackup(&pAsync1.p); + if (FAILED(hr)) { + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "PrepareForBackup"); errno = b_errno_win32; return false; } // Waits for the async operation to finish and checks the result - WaitAndCheckForAsyncOperation(pAsync1.p); + if (!WaitAndCheckForAsyncOperation(pAsync1.p)) { + errno = b_errno_win32; + return false; + } /* get latest info about writer status */ if (!CheckWriterStatus()) { - errno = b_errno_win32; + errno = b_errno_win32; /* Error already printed */ return false; } /* DoSnapShotSet */ - if (FAILED(pVss->DoSnapshotSet(&pAsync2.p))) { + hr = pVssObj->DoSnapshotSet(&pAsync2.p); + if (FAILED(hr)) { + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "DoSnapshotSet"); errno = b_errno_win32; return false; } // Waits for the async operation to finish and checks the result - WaitAndCheckForAsyncOperation(pAsync2.p); + if (!WaitAndCheckForAsyncOperation(pAsync2.p)) { + errno = b_errno_win32; + return false; + } + /* get latest info about writer status */ + if (!CheckWriterStatus()) { + errno = b_errno_win32; /* Error already printed */ + return false; + } + /* query snapshot info */ QuerySnapshotSet(m_uidCurrentSnapshotSet); @@ -530,64 +626,63 @@ bool bRet = false; HRESULT hr; BSTR xml; + IVssBackupComponents* pVssObj = (IVssBackupComponents*)m_pVssObject; - if (!m_pVssObject) + if (!m_pVssObject) { + Jmsg(m_jcr, M_FATAL, 0, "VssOject is NULL.\n"); errno = ENOSYS; - else { - IVssBackupComponents* pVss = (IVssBackupComponents*) m_pVssObject; - CComPtr<IVssAsync> pAsync; - - SetVSSPathConvert(NULL, NULL); - - m_bBackupIsInitialized = false; - - hr = pVss->SaveAsXML(&xml); - if (hr == ERROR_SUCCESS) - m_metadata = xml; - else - m_metadata = NULL; -#if 0 -{ - HRESULT hr; - BSTR xml; - int fd; + return bRet; + } + CComPtr<IVssAsync> pAsync; - hr = pVss->SaveAsXML(&xml); - fd = open("C:\\james.xml", O_CREAT | O_WRONLY | O_TRUNC, 0777); - write(fd, xml, wcslen(xml) * sizeof(WCHAR)); - close(fd); -} -#endif - if (SUCCEEDED(pVss->BackupComplete(&pAsync.p))) { - // Waits for the async operation to finish and checks the result - WaitAndCheckForAsyncOperation(pAsync.p); - bRet = true; - } else { - errno = b_errno_win32; - pVss->AbortBackup(); - } + SetVSSPathConvert(NULL, NULL); - /* get latest info about writer status */ - CheckWriterStatus(); + m_bBackupIsInitialized = false; - if (m_uidCurrentSnapshotSet != GUID_NULL) { - VSS_ID idNonDeletedSnapshotID = GUID_NULL; - LONG lSnapshots; + hr = pVssObj->BackupComplete(&pAsync.p); + if (SUCCEEDED(hr)) { + // Waits for the async operation to finish and checks the result + WaitAndCheckForAsyncOperation(pAsync.p); + bRet = true; + } else { + JmsgVssApiStatus(m_jcr, M_ERROR, hr, "BackupComplete"); + errno = b_errno_win32; + pVssObj->AbortBackup(); + } - pVss->DeleteSnapshots( - m_uidCurrentSnapshotSet, - VSS_OBJECT_SNAPSHOT_SET, - false, - &lSnapshots, - &idNonDeletedSnapshotID); + /* get latest info about writer status */ + CheckWriterStatus(); - m_uidCurrentSnapshotSet = GUID_NULL; - } + hr = pVssObj->SaveAsXML(&xml); + if (SUCCEEDED(hr)) { + m_metadata = xml; + } else { + m_metadata = NULL; + } - pVss->Release(); - m_pVssObject = NULL; + /* FIXME?: The docs http://msdn.microsoft.com/en-us/library/aa384582%28v=VS.85%29.aspx say this isn't required... */ + if (m_uidCurrentSnapshotSet != GUID_NULL) { + VSS_ID idNonDeletedSnapshotID = GUID_NULL; + LONG lSnapshots; + + pVssObj->DeleteSnapshots( + m_uidCurrentSnapshotSet, + VSS_OBJECT_SNAPSHOT_SET, + false, + &lSnapshots, + &idNonDeletedSnapshotID); + + m_uidCurrentSnapshotSet = GUID_NULL; + } + + if (m_bWriterStatusCurrent) { + m_bWriterStatusCurrent = false; + pVssObj->FreeWriterStatus(); } + pVssObj->Release(); + m_pVssObject = NULL; + // Call CoUninitialize if the CoInitialize was performed sucesfully if (m_bCoInitializeCalled) { CoUninitialize(); @@ -604,16 +699,17 @@ bool VSSClientGeneric::CloseRestore() { - HRESULT hr; - IVssBackupComponents* pVss = (IVssBackupComponents*) m_pVssObject; + //HRESULT hr; + IVssBackupComponents* pVssObj = (IVssBackupComponents*)m_pVssObject; CComPtr<IVssAsync> pAsync; - if (!pVss) - { + if (!pVssObj) { errno = ENOSYS; return false; } - if (SUCCEEDED(hr = pVss->PostRestore(&pAsync.p))) { +#if 0 +/* done by plugin now */ + if (SUCCEEDED(hr = pVssObj->PostRestore(&pAsync.p))) { // Waits for the async operation to finish and checks the result WaitAndCheckForAsyncOperation(pAsync.p); /* get latest info about writer status */ @@ -625,6 +721,7 @@ errno = b_errno_win32; return false; } +#endif return true; } @@ -632,28 +729,31 @@ void VSSClientGeneric::QuerySnapshotSet(GUID snapshotSetID) { if (!(p_CreateVssBackupComponents && p_VssFreeSnapshotProperties)) { + Jmsg(m_jcr, M_FATAL, 0, "CreateVssBackupComponents or VssFreeSnapshotProperties API is NULL.\n"); errno = ENOSYS; return; } - memset (m_szShadowCopyName,0,sizeof (m_szShadowCopyName)); + memset(m_szShadowCopyName,0,sizeof (m_szShadowCopyName)); if (snapshotSetID == GUID_NULL || m_pVssObject == NULL) { + Jmsg(m_jcr, M_FATAL, 0, "snapshotSetID == NULL or VssObject is NULL.\n"); errno = ENOSYS; return; } - IVssBackupComponents* pVss = (IVssBackupComponents*) m_pVssObject; + IVssBackupComponents* pVssObj = (IVssBackupComponents*) m_pVssObject; // Get list all shadow copies. CComPtr<IVssEnumObject> pIEnumSnapshots; - HRESULT hr = pVss->Query( GUID_NULL, + HRESULT hr = pVssObj->Query( GUID_NULL, VSS_OBJECT_NONE, VSS_OBJECT_SNAPSHOT, (IVssEnumObject**)(&pIEnumSnapshots) ); // If there are no shadow copies, just return if (FAILED(hr)) { + Jmsg(m_jcr, M_FATAL, 0, "No Volume Shadow copies made.\n"); errno = b_errno_win32; return; } @@ -691,31 +791,47 @@ /* http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vss/base/ivssbackupcomponents_startsnapshotset.asp */ - IVssBackupComponents* pVss = (IVssBackupComponents*) m_pVssObject; + IVssBackupComponents* pVssObj = (IVssBackupComponents*)m_pVssObject; + if (!pVssObj) { + Jmsg(m_jcr, M_FATAL, 0, "Cannot get IVssBackupComponents pointer.\n"); + errno = ENOSYS; + return false; + } DestroyWriterInfo(); + if (m_bWriterStatusCurrent) { + m_bWriterStatusCurrent = false; + pVssObj->FreeWriterStatus(); + } // Gather writer status to detect potential errors CComPtr<IVssAsync> pAsync; - HRESULT hr = pVss->GatherWriterStatus(&pAsync.p); + HRESULT hr = pVssObj->GatherWriterStatus(&pAsync.p); if (FAILED(hr)) { + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "GatherWriterStatus"); errno = b_errno_win32; return false; - } + } // Waits for the async operation to finish and checks the result - WaitAndCheckForAsyncOperation(pAsync.p); + if (!WaitAndCheckForAsyncOperation(pAsync.p)) { + errno = b_errno_win32; + return false; + } + m_bWriterStatusCurrent = true; + unsigned cWriters = 0; - hr = pVss->GetWriterStatusCount(&cWriters); + hr = pVssObj->GetWriterStatusCount(&cWriters); if (FAILED(hr)) { + JmsgVssApiStatus(m_jcr, M_FATAL, hr, "GatherWriterStatusCount"); errno = b_errno_win32; return false; } - - int nState; + int nState; + POOLMEM *szBuf = get_pool_memory(PM_FNAME); // Enumerate each writer for (unsigned iWriter = 0; iWriter < cWriters; iWriter++) { VSS_ID idInstance = GUID_NULL; @@ -725,17 +841,17 @@ HRESULT hrWriterFailure = S_OK; // Get writer status - hr = pVss->GetWriterStatus(iWriter, + hr = pVssObj->GetWriterStatus(iWriter, &idInstance, &idWriter, &bstrWriterName, &eWriterStatus, &hrWriterFailure); if (FAILED(hr)) { - /* unknown */ - nState = 0; - } - else { + /* Api failed */ + JmsgVssApiStatus(m_jcr, M_WARNING, hr, "GetWriterStatus"); + nState = 0; /* Unknown writer state -- API failed */ + } else { switch(eWriterStatus) { case VSS_WS_FAILED_AT_IDENTIFY: case VSS_WS_FAILED_AT_PREPARE_BACKUP: @@ -749,39 +865,32 @@ #if defined(B_VSS_W2K3) || defined(B_VSS_VISTA) case VSS_WS_FAILED_AT_BACKUPSHUTDOWN: #endif - /* failed */ - nState = -1; + /* Writer status problem */ + wchar_2_UTF8(&szBuf, bstrWriterName.p); + JmsgVssWriterStatus(m_jcr, M_WARNING, eWriterStatus, szBuf); + nState = -1; /* bad writer state */ break; default: /* ok */ - nState = 1; + nState = 1; /* Writer state OK */ } } /* store text info */ char str[1000]; - char szBuf[200]; bstrncpy(str, "\"", sizeof(str)); - wchar_2_UTF8(szBuf, bstrWriterName.p, sizeof(szBuf)); + wchar_2_UTF8(&szBuf, bstrWriterName.p); bstrncat(str, szBuf, sizeof(str)); bstrncat(str, "\", State: 0x", sizeof(str)); - itoa(eWriterStatus, szBuf, sizeof(szBuf)); + itoa(eWriterStatus, szBuf, sizeof_pool_memory(szBuf)); bstrncat(str, szBuf, sizeof(str)); bstrncat(str, " (", sizeof(str)); - wchar_2_UTF8(szBuf, GetStringFromWriterStatus(eWriterStatus), sizeof(szBuf)); + wchar_2_UTF8(&szBuf, GetStringFromWriterStatus(eWriterStatus)); bstrncat(str, szBuf, sizeof(str)); bstrncat(str, ")", sizeof(str)); - - AppendWriterInfo(nState, (const char *)str); + AppendWriterInfo(nState, (const char *)str); } - - hr = pVss->FreeWriterStatus(); - - if (FAILED(hr)) { - errno = b_errno_win32; - return false; - } - + free_pool_memory(szBuf); errno = 0; return true; } | ||
[+] | Changed | bacula-5.2.10.tar.bz2/src/win32/winapi.h ^ |
@@ -1,7 +1,7 @@ /* Bacula® - The Network Backup Solution - Copyright (C) 2003-2008 Free Software Foundation Europe e.V. + Copyright (C) 2003-2010 Free Software Foundation Europe e.V. The main author of Bacula is Kern Sibbald, with contributions from many others, a complete list can be found in the file AUTHORS. @@ -67,6 +67,7 @@ // "\\?\" to the path. For more information, see Naming a File. #define MAX_PATH_W 32767 +int wchar_2_UTF8(POOLMEM **pszUTF, const wchar_t *pszUCS); int wchar_2_UTF8(char *pszUTF, const WCHAR *pszUCS, int cchChar = MAX_PATH_UTF8); int UTF8_2_wchar(POOLMEM **pszUCS, const char *pszUTF); int make_win32_path_UTF8_2_wchar(POOLMEM **pszUCS, const char *pszUTF, BOOL* pBIsRawPath = NULL); | ||
[+] | Deleted | bacula-5.2.9.tar.bz2/src/win32/compat/winconfig.h ^ |
@@ -1,638 +0,0 @@ -/* - * This file was originally generated by configure, but has been edited - * to provide the correct defines for the Native Win32 build under - * Visual Studio. - * - * Note!!! We normally do NOT build the Windows versions with this header - * file. We use the Mingw environment defined in mingwconfig.h. - */ -/* ------------------------------------------------------------------------- */ -/* -- CONFIGURE SPECIFIED FEATURES -- */ -/* ------------------------------------------------------------------------- */ - -#ifndef __WINCONFIG_H -#define __WINCONFIG_H - -#define HAVE_OPENSSL 1 -#define HAVE_CRYPTO 1 -#define HAVE_TLS 1 - -/* Define if you want to use MySQL as Catalog database */ -/* #undef USE_MYSQL_DB */ - -/* Define if you want SmartAlloc debug code enabled */ -#define SMARTALLOC 1 - -/* Define to `int' if <sys/types.h> doesn't define. */ -/* #undef daddr_t */ - -/* Define to `int' if <sys/types.h> doesn't define. */ -#define major_t int - -/* Define to `int' if <sys/types.h> doesn't define. */ -#define minor_t int - -/* Define to `int' if <sys/types.h> doesn't define. */ -/* #undef ssize_t */ - -/* Define if you want to use MySQL */ -/* #define HAVE_MYSQL 1 */ - -/* Define if you want to use embedded MySQL */ -/* #undef HAVE_EMBEDDED_MYSQL */ - -/* Define if you want to use SQLite3 */ -/* #undef HAVE_SQLITE3 */ - -/* Define if you want to use Berkeley DB */ -/* #undef HAVE_BERKELEY_DB */ - - -/* Define if you want to use PostgreSQL */ -/* #undef HAVE_PGSQL */ - -/* ------------------------------------------------------------------------- */ -/* -- CONFIGURE DETECTED FEATURES -- */ -/* ------------------------------------------------------------------------- */ - -/* Define if you need function prototypes */ -#define PROTOTYPES 1 - -/* Define if you have XPointer typedef */ -/* #undef HAVE_XPOINTER */ - -/* Define if you have _GNU_SOURCE getpt() */ -/* #undef HAVE_GETPT */ - -/* Define if you have GCC */ -/* #undef HAVE_GCC 1 */ - -/* Define if you have the Andrew File System. */ -/* #undef AFS */ - -/* Define If you want find -nouser and -nogroup to make tables of - used UIDs and GIDs at startup instead of using getpwuid or - getgrgid when needed. Speeds up -nouser and -nogroup unless you - are running NIS or Hesiod, which make password and group calls - very expensive. */ -/* #undef CACHE_IDS */ - -/* Define to use SVR4 statvfs to get filesystem type. */ -/* #undef FSTYPE_STATVFS */ - -/* Define to use SVR3.2 statfs to get filesystem type. */ -/* #undef FSTYPE_USG_STATFS */ - -/* Define to use AIX3 statfs to get filesystem type. */ -/* #undef FSTYPE_AIX_STATFS */ - -/* Define to use 4.3BSD getmntent to get filesystem type. */ -/* #undef FSTYPE_MNTENT 1 */ - -/* Define to use 4.4BSD and TRU64 statfs to get filesystem type. */ -/* #undef FSTYPE_STATFS */ - -/* Define to use Ultrix getmnt to get filesystem type. */ -/* #undef FSTYPE_GETMNT */ - -/* Define to `unsigned long' if <sys/types.h> doesn't define. */ -/* #undef dev_t */ - -/* Define to `unsigned long' if <sys/types.h> doesn't define. */ -/* #undef ino_t */ - -/* Define to 1 if utime.h exists and declares struct utimbuf. */ -#ifdef HAVE_MINGW -#define HAVE_UTIME_H 1 -#endif - -/* Data types */ -#define HAVE_U_INT 1 -#define HAVE_INTXX_T 1 -#define HAVE_U_INTXX_T 1 -/* #undef HAVE_UINTXX_T */ -#define HAVE_INT64_T 1 -#define HAVE_U_INT64_T 1 -#define HAVE_INTMAX_T 1 -/* #undef HAVE_U_INTMAX_T */ - -/* Define if you want TCP Wrappers support */ -/* #undef HAVE_LIBWRAP */ - -/* Define if you have sys/bitypes.h */ -/* #undef HAVE_SYS_BITYPES_H */ - -/* Directory for PID files */ -/* #define _PATH_BACULA_PIDDIR "/var/run" */ -#undef _PATH_BACULA_PIDDIR - -/* Define if you have zlib */ -#define HAVE_LIBZ 1 - -/* General libs */ -/* #undef LIBS */ - -/* File daemon specif libraries */ -#define FDLIBS 1 - -/* Path to Sendmail program */ -/* #undef SENDMAIL_PATH */ - -/* What kind of signals we have */ -/*#define HAVE_POSIX_SIGNALS 1 */ -/* #undef HAVE_BSD_SIGNALS */ -/* #undef HAVE_USG_SIGHOLD */ - -/* Operating systems */ -/* OSes */ -/* #undef HAVE_LINUX_OS */ -/* #undef HAVE_FREEBSD_OS */ -/* #undef HAVE_NETBSD_OS */ -/* #undef HAVE_OPENBSD_OS */ -/* #undef HAVE_BSDI_OS */ -/* #undef HAVE_HPUX_OS */ -/* #undef HAVE_SUN_OS */ -/* #undef HAVE_IRIX_OS */ -/* #undef HAVE_AIX_OS */ -/* #undef HAVE_SGI_OS */ -/* #define HAVE_CYGWIN 1 */ -/* #undef HAVE_OSF1_OS */ -/* #undef HAVE_DARWIN_OS */ - -/* Set to correct scanf value for long long int */ -#define lld "lld" -#define llu "llu" - -/*#define HAVE_READLINE 1 */ - -/* #undef HAVE_GMP */ - -/* #undef HAVE_CWEB */ - -/* #define HAVE_FCHDIR 1 */ - -/* #undef HAVE_GETOPT_LONG */ - -/* #undef HAVE_LIBSM */ - -/* Check for thread safe routines */ -/*#define HAVE_LOCALTIME_R 1 */ -/* #undef HAVE_READDIR_R */ -/*#define HAVE_STRERROR_R 1*/ -/* #undef HAVE_GETHOSTBYNAME_R */ - -#define HAVE_STRTOLL 1 -/* #undef HAVE_INET_PTON */ - -/*#define HAVE_SOCKLEN_T 1 */ - -/* #undef HAVE_OLD_SOCKOPT */ - -/* #undef HAVE_BIGENDIAN */ - -/* Define to 1 if the `closedir' function returns void instead of `int'. */ -/* #undef CLOSEDIR_VOID */ - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - -/* Define to 1 if you have `alloca', as a function or macro. */ -#define HAVE_ALLOCA 1 -#ifndef HAVE_MINGW -#define alloca _alloca -#endif -/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix). - */ -#define HAVE_ALLOCA_H 1 - -/* Define to 1 if you have the <arpa/nameser.h> header file. */ -/*#define HAVE_ARPA_NAMESER_H 1 */ - -/* Define to 1 if you have the <assert.h> header file. */ -#define HAVE_ASSERT_H 1 - -/* Define to 1 if you have the `chflags' function. */ -/* #undef HAVE_CHFLAGS */ - -/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. - */ -#define HAVE_DIRENT_H 1 - -/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ -/* #undef HAVE_DOPRNT */ - -/* Define to 1 if you have the `fchdir' function. */ -/*#define HAVE_FCHDIR 1 */ - -/* Define to 1 if you have the <fcntl.h> header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if your system has a working POSIX `fnmatch' function. */ -/*#define HAVE_FNMATCH 1 */ - -/* Define to 1 if you have the `fork' function. */ -/*#define HAVE_FORK 1 */ - -/* Define to 1 if you have the `getcwd' function. */ -#define HAVE_GETCWD 1 - -/* Define to 1 if you have the `getdomainname' function. */ -/*#define HAVE_GETDOMAINNAME 1 */ - -/* Define to 1 if you have the `gethostbyname_r' function. */ -/* #undef HAVE_GETHOSTBYNAME_R */ - -/* Define to 1 if you have the `gethostid' function. */ -#define HAVE_GETHOSTID 1 - -/* Define to 1 if you have the `gethostname' function. */ -#define HAVE_GETHOSTNAME 1 - -/* Define to 1 if you have the `getmntent' function. */ -/*#define HAVE_GETMNTENT 1 */ - -/* Define to 1 if you have the `getpid' function. */ -#define HAVE_GETPID 1 -#define getpid _getpid - -/* Define to 1 if you have the `gettimeofday' function. */ -#define HAVE_GETTIMEOFDAY 1 - -/* Define to 1 if you have the <grp.h> header file. */ -/*#define HAVE_GRP_H 1*/ - -/* Define to 1 if you have the `inet_pton' function. */ -/* #undef HAVE_INET_PTON */ - -/* Define to 1 if you have the <inttypes.h> header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have the `lchown' function. */ -#define HAVE_LCHOWN 1 - -/* Define to 1 if you have the <libc.h> header file. */ -/* #undef HAVE_LIBC_H */ - -/* Define to 1 if you have the `inet' library (-linet). */ -/* #undef HAVE_LIBINET */ - -/* Define to 1 if you have the `nsl' library (-lnsl). */ -/* #undef HAVE_LIBNSL */ - -/* Define to 1 if you have the `resolv' library (-lresolv). */ -/* #undef HAVE_LIBRESOLV */ - -/* Define to 1 if you have the `socket' library (-lsocket). */ -/* #undef HAVE_LIBSOCKET */ - -/* Define to 1 if you have the `sun' library (-lsun). */ -/* #undef HAVE_LIBSUN */ - -/* Define to 1 if you have the `xnet' library (-lxnet). */ -/* #undef HAVE_LIBXNET */ - -/* Define to 1 if you have the <limits.h> header file. */ -#define HAVE_LIMITS_H 1 - -/* Define to 1 if you have the `localtime_r' function. */ -#define HAVE_LOCALTIME_R 1 - -/* Define to 1 if you have the `lstat' function. */ -#define HAVE_LSTAT 1 - -/* Define to 1 if you have the <memory.h> header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the <mtio.h> header file. */ -/* #undef HAVE_MTIO_H */ - -/* Define to 1 if you have the `nanosleep' function. */ -#define HAVE_NANOSLEEP 1 - -/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */ -/* #undef HAVE_NDIR_H */ - -/* Define to 1 if you have the `putenv' function. */ -#define HAVE_PUTENV 1 - -/* Define to 1 if you have the <pwd.h> header file. */ -/*#define HAVE_PWD_H 1*/ - -/* Define to 1 if you have the `readdir_r' function. */ -/* #undef HAVE_READDIR_R */ - -/* Define to 1 if you have the <resolv.h> header file. */ -/*#define HAVE_RESOLV_H 1*/ - -/* Define to 1 if you have the `select' function. */ -#define HAVE_SELECT 1 - -/* Define to 1 if you have the `setenv' function. */ -#define HAVE_SETENV 1 - -/* Define to 1 if you have the `setlocale' function. */ -#undef HAVE_SETLOCALE - -/* Define to 1 if translation of program messages to the user's native - language is requested. */ -#if (defined _MSC_VER) && (_MSC_VER >= 1400) // VC8+ -/* Enable NLS only if we are using the new VC++. - * NLS should also work with VC++ 7.1, but the Makefiles are - * not adapted to support it (include, lib...). */ -//#define ENABLE_NLS 1 -#endif - -#undef LOCALEDIR -#define LOCALEDIR "." - -#undef HAVE_NL_LANGINFO - -/* Define to 1 if you have the `setpgid' function. */ -#define HAVE_SETPGID 1 - -/* Define to 1 if you have the `setpgrp' function. */ -#define HAVE_SETPGRP 1 - -/* Define to 1 if you have the `setsid' function. */ -#define HAVE_SETSID 1 - -/* Define to 1 if you have the `signal' function. */ -/*#define HAVE_SIGNAL 1 */ - -/* Define to 1 if you have the `snprintf' function. */ -#define HAVE_SNPRINTF 1 -#define HAVE_SNPRINTF_DECL 1 - -/* Define to 1 if you have the <stdarg.h> header file. */ -#define HAVE_STDARG_H 1 - -/* Define to 1 if you have the <stdint.h> header file. */ -/*#define HAVE_STDINT_H 1 */ - -/* Define to 1 if you have the <stdlib.h> header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the `strcasecmp' function. */ -/*#define HAVE_STRCASECMP 1*/ - -/* Define to 1 if you have the `strerror' function. */ -#define HAVE_STRERROR 1 - -/* Define to 1 if you have the `strerror_r' function. */ -#define HAVE_STRERROR_R 1 - -/* Define to 1 if you have the `strftime' function. */ -#define HAVE_STRFTIME 1 - -/* Define to 1 if you have the <strings.h> header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the <string.h> header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strncmp' function. */ -#define HAVE_STRNCMP 1 - -/* Define to 1 if you have the `strncpy' function. */ -#define HAVE_STRNCPY 1 - -/* Define to 1 if you have the `strtoll' function. */ -#define HAVE_STRTOLL 1 - -/* Define to 1 if `st_blksize' is member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 - -/* Define to 1 if `st_blocks' is member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_BLOCKS 1 - -/* Define to 1 if `st_rdev' is member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_RDEV 1 - -/* Define to 1 if `tm_zone' is member of `struct tm'. */ -/* #undef HAVE_STRUCT_TM_TM_ZONE */ - -/* Define to 1 if your `struct stat' has `st_blksize'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLKSIZE' instead. */ -#define HAVE_ST_BLKSIZE 1 - -/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ -#define HAVE_ST_BLOCKS 1 - -/* Define to 1 if your `struct stat' has `st_rdev'. Deprecated, use - `HAVE_STRUCT_STAT_ST_RDEV' instead. */ -#define HAVE_ST_RDEV 1 - -/* Define to 1 if you have the <sys/byteorder.h> header file. */ -/* #undef HAVE_SYS_BYTEORDER_H */ - -/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_DIR_H */ - -/* Define to 1 if you have the <sys/ioctl.h> header file. */ -#define HAVE_SYS_IOCTL_H 1 - -/* Define to 1 if you have the <sys/mtio.h> header file. */ -#define HAVE_SYS_MTIO_H 1 - -/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'. - */ -/* #undef HAVE_SYS_NDIR_H */ - -/* Define to 1 if you have the <sys/select.h> header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define to 1 if you have the <sys/socket.h> header file. */ -#define HAVE_SYS_SOCKET_H 1 - -/* Define to 1 if you have the <sys/sockio.h> header file. */ -/* #undef HAVE_SYS_SOCKIO_H */ - -/* Define to 1 if you have the <sys/stat.h> header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the <sys/time.h> header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the <sys/types.h> header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ -#define HAVE_SYS_WAIT_H 1 - -/* Define to 1 if you have the `tcgetattr' function. */ -#define HAVE_TCGETATTR 1 - -/* Define to 1 if you have the <termios.h> header file. */ -#define HAVE_TERMIOS_H 1 - -/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ -/* #undef HAVE_TM_ZONE */ - -/* Define to 1 if you don't have `tm_zone' but do have the external array - `tzname'. */ -#define HAVE_TZNAME 1 - -/* Define to 1 if you have the <unistd.h> header file. */ -#define HAVE_UNISTD_H 1 - -/* Define to 1 if you have the <varargs.h> header file. */ -/* #undef HAVE_VARARGS_H */ - -/* Define to 1 if you have the `vfprintf' function. */ -#define HAVE_VFPRINTF 1 - -/* Define to 1 if you have the `vprintf' function. */ -#define HAVE_VPRINTF 1 - -/* Define to 1 if you have the `vsnprintf' function. */ -#define HAVE_VSNPRINTF 1 -#define HAVE_VSNPRINTF_DECL 1 - -/* Define to 1 if you have the <zlib.h> header file. */ -#define HAVE_ZLIB_H 1 - -/* Define to 1 if `major', `minor', and `makedev' are declared in <mkdev.h>. - */ -/* #undef MAJOR_IN_MKDEV */ - -/* Define to 1 if `major', `minor', and `makedev' are declared in - <sysmacros.h>. */ -/* #undef MAJOR_IN_SYSMACROS */ - -/* Define to 1 if your C compiler doesn't accept -c and -o together. */ -/* #undef NO_MINUS_C_MINUS_O */ - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "" - -/* Define as the return type of signal handlers (`int' or `void'). */ -#define RETSIGTYPE void - -/* Define to 1 if the `setpgrp' function takes no argument. */ -#define SETPGRP_VOID 1 - -/* The size of a `char', as computed by sizeof. */ -#define SIZEOF_CHAR 1 - -/* The size of a `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* The size of a `int *', as computed by sizeof. */ -#define SIZEOF_INT_P 4 - -/* The size of a `long int', as computed by sizeof. */ -#define SIZEOF_LONG 4 - -/* The size of a `long int', as computed by sizeof. */ -#define SIZEOF_LONG_INT 4 - -/* The size of a `long long int', as computed by sizeof. */ -#define SIZEOF_LONG_LONG_INT 8 - -/* The size of a `short int', as computed by sizeof. */ -#define SIZEOF_SHORT_INT 2 - -/* The size of a `void *', as computed by sizeof. */ -#define SIZEOF_VOID_P 4 - -/* The size of a `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 4 - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at run-time. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - -/* Define to 1 if the `S_IS*' macros in <sys/stat.h> do not work properly. */ -/* #undef STAT_MACROS_BROKEN */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ -#define TIME_WITH_SYS_TIME 1 - -/* Define to 1 if your <sys/time.h> declares `struct tm'. */ -/* #undef TM_IN_SYS_TIME */ - -/* Define to 1 if the X Window System is missing or not being used. */ -/* #undef X_DISPLAY_MISSING */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* Define to `long' if <sys/types.h> does not define. */ -/* #undef daddr_t */ - -/* Define to `unsigned long' if <sys/types.h> does not define. */ -/* #undef dev_t */ - -/* Define to `int' if <sys/types.h> doesn't define. */ -/* #undef gid_t */ - -/* Define to `unsigned long' if <sys/types.h> does not define. */ -/* #undef ino_t */ - -/* Define to `int' if <sys/types.h> does not define. */ -#define major_t int - -/* Define to `int' if <sys/types.h> does not define. */ -#define minor_t int - -/* Define to `int' if <sys/types.h> does not define. */ -/* #undef mode_t */ - -/* Define to `long' if <sys/types.h> does not define. */ -/* #undef off_t */ - -/* Define to `int' if <sys/types.h> does not define. */ -/* #undef pid_t */ - -/* Define to `unsigned' if <sys/types.h> does not define. */ -/* #undef size_t */ - -/* Define to `int' if <sys/types.h> does not define. */ -/* #undef ssize_t */ - -/* Define to `int' if <sys/types.h> doesn't define. */ -/* #undef uid_t */ - -/* Use long unsigned int for ioctl request */ -#define HAVE_IOCTL_ULINT_REQUEST - -/* Little Endian */ -#define HAVE_LITTLE_ENDIAN 1 - -/* Number of bits in a file offset, on hosts where this is settable. */ -#define _FILE_OFFSET_BITS 64 - -/* Define to make fseeko etc. visible, on some hosts. */ -#define _LARGEFILE_SOURCE 1 - -/* Define for large files, on AIX-style hosts. */ -#define _LARGE_FILES 1 - -#endif /* __WINCONFIG_H */ |