From b7866ea576a1c235fb5956c8bdf1281a4297d797 Mon Sep 17 00:00:00 2001 From: wbaumann Date: Sun, 20 Apr 2014 09:12:27 +0000 Subject: [PATCH] Replace system() with execl() --- ChangeLog | 4 + configure.ac | 1 + po/cs.po | 159 ++++++++++++++++++++++------------------ po/davfs2.pot | 157 +++++++++++++++++++++------------------ po/de.po | 163 +++++++++++++++++++++++------------------ src/kernel_interface.c | 34 ++++++--- 6 files changed, 296 insertions(+), 222 deletions(-) diff --git a/ChangeLog b/ChangeLog index d87277f..aa38aa8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,10 @@ ChangeLog for davfs2 -------------------- +2014-04-20 Werner Baumann (werner.baumann@onlinehome.de) + * kernel_interface.c: + Replace system() with execl(). + 2014-04-18 Werner Baumann (werner.baumann@onlinehome.de) * defaults.h, mount_davfs.h, mount_davfs.c, webdav.c: Improve cookie support (sr #107907, bug #41438). diff --git a/configure.ac b/configure.ac index 7decda6..8c35922 100644 --- a/configure.ac +++ b/configure.ac @@ -73,6 +73,7 @@ AC_FUNC_CHOWN AC_FUNC_CLOSEDIR_VOID AC_FUNC_ERROR_AT_LINE AC_FUNC_FORK +AC_FUNC_GETGROUPS AC_FUNC_GETMNTENT AC_FUNC_MALLOC AC_FUNC_SELECT_ARGTYPES diff --git a/po/cs.po b/po/cs.po index 5bc2f3c..45e4a6e 100644 --- a/po/cs.po +++ b/po/cs.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: http://savannah.nongnu.org/support/?" "func=additem&group=davfs2\n" -"POT-Creation-Date: 2014-04-05 22:21+0200\n" +"POT-Creation-Date: 2014-04-20 10:43+0200\n" "PO-Revision-Date: 2007-05-03 19:50+0200\n" "Last-Translator: Vítězslav Kotrla \n" "Language-Team: \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Transfer-Encoding: 8bitX-Generator: KBabel 1.11.4\n" "X-Generator: KBabel 1.11.4\n" -#: src/cache.c:650 +#: src/cache.c:655 #, c-format msgid "" "connection timed out two times;\n" @@ -26,12 +26,12 @@ msgstr "" "spojení vypršelo dvakrát;\n" "zkouším to ještě jednou a naposledy" -#: src/cache.c:655 +#: src/cache.c:660 #, c-format msgid "Last try succeeded.\n" msgstr "Poslední pokus byl úspěšný.\n" -#: src/cache.c:658 +#: src/cache.c:663 #, c-format msgid "" "server temporarily unreachable;\n" @@ -40,7 +40,7 @@ msgstr "" "server je dočasně nedostupný;\n" "přesto připojuji" -#: src/cache.c:661 +#: src/cache.c:666 #, c-format msgid "" "Mounting failed.\n" @@ -49,99 +49,114 @@ msgstr "" "Připojení selhalo;\n" "%s" -#: src/cache.c:700 +#: src/cache.c:705 #, c-format msgid "can't replace %s with %s" msgstr "nemohu nahradit %s pomocí %s" -#: src/cache.c:704 +#: src/cache.c:709 #, c-format msgid "error writing new index file %s" msgstr "chyba při zápisu nového indexového souboru %s" -#: src/cache.c:708 +#: src/cache.c:713 #, c-format msgid "can't create new index file for %s" msgstr "nemohu vytvořit nový indexový soubor pro %s" -#: src/cache.c:911 +#: src/cache.c:920 #, c-format msgid "" "File %s exists on the server but should not. Maybe it is an error in the " "server's LOCK impementation. You may try option 'use_locks 0' in davfs2.conf." msgstr "" -#: src/cache.c:2376 src/cache.c:2409 +#: src/cache.c:2392 src/cache.c:2425 #, c-format msgid "can't create cache file %s" msgstr "nemohu vytvořit soubor vyrovnávací paměti %s" -#: src/cache.c:2424 +#: src/cache.c:2440 #, c-format msgid "error writing directory %s" msgstr "chyba při zápisu adresáře %s" -#: src/cache.c:2586 src/mount_davfs.c:1036 +#: src/cache.c:2602 src/mount_davfs.c:1036 #, c-format msgid "can't read user data base" msgstr "nemohu přečíst údaje o uživatelích" -#: src/cache.c:2598 +#: src/cache.c:2614 #, c-format msgid "can't open cache directory %s" msgstr "nemohu otevřít kešovací adresář %s" -#: src/cache.c:2613 +#: src/cache.c:2629 #, c-format msgid "can't create cache directory %s" msgstr "nemohu vytvořit kešovací adresář %s" -#: src/cache.c:2620 +#: src/cache.c:2636 #, c-format msgid "can't access cache directory %s" msgstr "nemohu přistoupit ke kešovacímu adresáři %s" -#: src/cache.c:2623 +#: src/cache.c:2639 #, c-format msgid "wrong owner of cache directory %s" msgstr "chybný vlastník kešovacího adresáře %s" -#: src/cache.c:2627 +#: src/cache.c:2643 #, c-format msgid "wrong permissions set for cache directory %s" msgstr "pro kešovací adresář %s nastaveno chybné oprávnění" -#: src/cache.c:2657 +#: src/cache.c:2673 msgid "found orphaned file in cache:" msgstr "" -#: src/cache.c:2730 +#: src/cache.c:2746 #, c-format msgid "error parsing %s" msgstr "chyba při zpracování %s" -#: src/cache.c:2731 +#: src/cache.c:2747 #, c-format msgid " at line %i" msgstr "" -#: src/cache.c:2776 +#: src/cache.c:2792 #, c-format msgid "open files exceed max cache size by %llu MiBytes" msgstr "" "otevřené soubory přesahují limit velikosti vyrovnávací paměti o %llu MiB" -#: src/kernel_interface.c:219 +#: src/kernel_interface.c:220 #, c-format msgid "can't allocate message buffer" msgstr "nemohu alokovat buffer pro zprávu" -#: src/kernel_interface.c:246 +#: src/kernel_interface.c:234 +#, c-format +msgid "loading kernel module fuse" +msgstr "" + +#: src/kernel_interface.c:248 +#, c-format +msgid "loading kernel module fuse failed" +msgstr "" + +#: src/kernel_interface.c:254 +#, c-format +msgid "waiting for %s to be created" +msgstr "" + +#: src/kernel_interface.c:262 #, c-format msgid "can't open fuse device" msgstr "nemohu otevřít fuse zařízení" -#: src/kernel_interface.c:254 +#: src/kernel_interface.c:270 #, fuzzy, c-format msgid "mounting failed" msgstr "odpojení selhalo" @@ -443,85 +458,85 @@ msgstr "nemohu dešifrovat klientský certifikát %s" msgid "pid %i, got signal %i" msgstr "pid %i dostal signál %i" -#: src/mount_davfs.c:1252 +#: src/mount_davfs.c:1254 #, fuzzy, c-format msgid "can't create file %s" msgstr "nemohu vytvořit soubor vyrovnávací paměti %s" -#: src/mount_davfs.c:1256 +#: src/mount_davfs.c:1258 #, fuzzy, c-format msgid "can't lock file %s" msgstr "nemohu otevřít soubor %s" -#: src/mount_davfs.c:1278 +#: src/mount_davfs.c:1280 #, fuzzy, c-format msgid "" "Warning: can't write entry into %s, but will mount the file system anyway" msgstr "" "Varování: nelze zapsat položku do mtab, přesto souborový systém připojím" -#: src/mount_davfs.c:1314 +#: src/mount_davfs.c:1316 #, c-format msgid "option %s has invalid argument;it must be a decimal number" msgstr "volba %s má neplatný argument; musí to být číslo v desítkové soustavě" -#: src/mount_davfs.c:1317 +#: src/mount_davfs.c:1319 #, c-format msgid "option %s has invalid argument;it must be an octal number" msgstr "volba %s má neplatný argument; musí to být číslo v osmičkové soustavě" -#: src/mount_davfs.c:1320 +#: src/mount_davfs.c:1322 #, c-format msgid "option %s has invalid argument;it must be a number" msgstr "volba %s má neplatný argument; musí to být číslo" -#: src/mount_davfs.c:1562 +#: src/mount_davfs.c:1565 #, c-format msgid "option %s requires argument" msgstr "volba %s vyžaduje argument" -#: src/mount_davfs.c:1655 +#: src/mount_davfs.c:1652 #, c-format msgid "Unknown option %s.\n" msgstr "Neznámá volba %s.\n" -#: src/mount_davfs.c:2025 +#: src/mount_davfs.c:2023 #, fuzzy, c-format msgid "can't read certificate %s" msgstr "nelze přečíst klientský certifikát %s" -#: src/mount_davfs.c:2057 src/mount_davfs.c:2070 +#: src/mount_davfs.c:2055 src/mount_davfs.c:2068 #, c-format msgid "can't read client certificate %s" msgstr "nelze přečíst klientský certifikát %s" -#: src/mount_davfs.c:2061 +#: src/mount_davfs.c:2059 #, c-format msgid "client certificate file %s has wrong owner" msgstr "klientský certifikát %s má chybného vlastníka" -#: src/mount_davfs.c:2065 +#: src/mount_davfs.c:2063 #, c-format msgid "client certificate file %s has wrong permissions" msgstr "soubor s klientským certifikátem %s má chybná oprávnění" -#: src/mount_davfs.c:2087 src/mount_davfs.c:2317 +#: src/mount_davfs.c:2085 src/mount_davfs.c:2314 #, fuzzy, c-format msgid "opening %s failed" msgstr "odpojení selhalo" -#: src/mount_davfs.c:2108 src/mount_davfs.c:2153 src/mount_davfs.c:2247 -#: src/mount_davfs.c:2344 src/mount_davfs.c:2402 src/mount_davfs.c:2415 +#: src/mount_davfs.c:2106 src/mount_davfs.c:2150 src/mount_davfs.c:2244 +#: src/mount_davfs.c:2341 src/mount_davfs.c:2399 src/mount_davfs.c:2412 #, c-format msgid "malformed line" msgstr "špatně zapsaný řádek" -#: src/mount_davfs.c:2225 src/mount_davfs.c:2241 +#: src/mount_davfs.c:2222 src/mount_davfs.c:2238 #, c-format msgid "unknown option" msgstr "neznámá volba" -#: src/mount_davfs.c:2547 +#: src/mount_davfs.c:2544 #, c-format msgid "" "Usage:\n" @@ -534,7 +549,7 @@ msgstr "" " %s -h,--help : vytiskne tuto zprávu\n" "\n" -#: src/mount_davfs.c:2551 +#: src/mount_davfs.c:2548 #, c-format msgid "" "To mount a WebDAV-resource don't call %s directly, but use\n" @@ -543,7 +558,7 @@ msgstr "" "Pro připojení zdroje WebDAV nevolejte přímo %s, ale\n" "použijte místo toho `mount'.\n" -#: src/mount_davfs.c:2553 +#: src/mount_davfs.c:2550 #, c-format msgid "" " mount : or\n" @@ -554,7 +569,7 @@ msgstr "" " mount : připojí zdroj WebDAV tak, jak je zadáno\n" " v /etc/fstab.\n" -#: src/mount_davfs.c:2556 +#: src/mount_davfs.c:2553 #, c-format msgid "" " mount -t davfs [-o options]\n" @@ -571,7 +586,7 @@ msgstr "" " označuje seznam voleb oddělených čárkou.\n" "\n" -#: src/mount_davfs.c:2561 +#: src/mount_davfs.c:2558 #, c-format msgid "" "Recognised options:\n" @@ -590,13 +605,15 @@ msgstr "" " file_mode= : výchozí mode souboru (v osmičkové soustavě)\n" " dir_mode= : výchozí mode adresáře (v osmičkové soustavě)\n" -#: src/mount_davfs.c:2567 -#, c-format +#: src/mount_davfs.c:2564 +#, fuzzy, c-format msgid "" " ro : mount read-only\n" " rw : mount read-write\n" " [no]exec : (don't) allow execution of binaries\n" " [no]suid : (don't) allow suid and sgid bits to take effect\n" +" [no]grpid : new files (don't) get the group id of the directory\n" +" in which they are created.\n" " [no]_netdev : (no) network connection needed\n" msgstr "" " ro : připojit jen ke čtení\n" @@ -698,96 +715,96 @@ msgstr "%s: čekám, než si %s (pid %s) sesynchronizuje vyrovnávací paměť. msgid "an error occured while waiting; please wait for %s to terminate" msgstr "při čekání došlo k chybě; čekejte prosím až %s skončí" -#: src/webdav.c:338 +#: src/webdav.c:340 #, fuzzy, c-format msgid "socket library initialization failed" msgstr "selhala inicializace knihovny socketů" -#: src/webdav.c:350 +#: src/webdav.c:352 #, c-format msgid "can't open stream to log neon-messages" msgstr "" -#: src/webdav.c:381 +#: src/webdav.c:383 #, c-format msgid "neon library does not support TLS/SSL" msgstr "knihovna neon nepodporuje TLS/SSL" -#: src/webdav.c:442 src/webdav.c:445 +#: src/webdav.c:449 src/webdav.c:452 #, c-format msgid "mounting failed; the server does not support WebDAV" msgstr "připojení selhalo; server nepodporuje WebDAV" -#: src/webdav.c:453 +#: src/webdav.c:460 #, c-format msgid "warning: the server does not support locks" msgstr "varování: server nepodporuje zámky" -#: src/webdav.c:1465 +#: src/webdav.c:1485 msgid "authentication failure:" msgstr "selhání autentizace:" -#: src/webdav.c:1503 +#: src/webdav.c:1523 #, c-format msgid "%i can't open cache file" msgstr "%i nemůže otevřít soubor vyrovnávací paměti" -#: src/webdav.c:1511 +#: src/webdav.c:1531 #, c-format msgid "%i error writing to cache file" msgstr "%i chyba při zápisu do souboru vyrovnávací paměti" -#: src/webdav.c:1741 src/webdav.c:1770 src/webdav.c:1807 +#: src/webdav.c:1826 src/webdav.c:1855 src/webdav.c:1892 #, c-format msgid "the server certificate is not trusted" msgstr "certifikát serveru je nedůvěryhodný" -#: src/webdav.c:1750 src/webdav.c:1753 +#: src/webdav.c:1835 src/webdav.c:1838 #, c-format msgid "error processing server certificate" msgstr "chyba při zpracování certifikátu serveru" -#: src/webdav.c:1764 src/webdav.c:1798 +#: src/webdav.c:1849 src/webdav.c:1883 #, c-format msgid "the server certificate is not yet valid" msgstr "certifikát serveru zatím není platný" -#: src/webdav.c:1766 src/webdav.c:1801 +#: src/webdav.c:1851 src/webdav.c:1886 #, c-format msgid "the server certificate has expired" msgstr "platnost certifikátu serveru vypršela" -#: src/webdav.c:1768 src/webdav.c:1804 +#: src/webdav.c:1853 src/webdav.c:1889 #, c-format msgid "the server certificate does not match the server name" msgstr "certifikát serveru nedopovídá jménu serveru" -#: src/webdav.c:1772 src/webdav.c:1810 +#: src/webdav.c:1857 src/webdav.c:1895 #, c-format msgid "unknown certificate error" msgstr "neznámá chyba certifikátu" -#: src/webdav.c:1773 +#: src/webdav.c:1858 #, c-format msgid " issuer: %s" msgstr " vydavatel: %s" -#: src/webdav.c:1775 +#: src/webdav.c:1860 #, c-format msgid " subject: %s" msgstr " subjekt: %s" -#: src/webdav.c:1777 +#: src/webdav.c:1862 #, c-format msgid " identity: %s" msgstr " identita: %s" -#: src/webdav.c:1779 +#: src/webdav.c:1864 #, c-format msgid " fingerprint: %s" msgstr " otisk: %s" -#: src/webdav.c:1781 +#: src/webdav.c:1866 #, c-format msgid "" "You only should accept this certificate, if you can\n" @@ -798,27 +815,27 @@ msgstr "" "ověřit jeho otisk! Server může být podvržen nebo může\n" "dojít k útoku s prostředníkem (man-in-the-middle attack).\n" -#: src/webdav.c:1784 +#: src/webdav.c:1869 #, c-format msgid "Accept certificate for this session? [y,N] " msgstr "Přijmout certifikát pro toto sezení? [y,N] " -#: src/webdav.c:1811 +#: src/webdav.c:1896 #, c-format msgid " issuer: %s" msgstr " vydavatel: %s" -#: src/webdav.c:1812 +#: src/webdav.c:1897 #, c-format msgid " subject: %s" msgstr " subjekt: %s" -#: src/webdav.c:1813 +#: src/webdav.c:1898 #, c-format msgid " identity: %s" msgstr " identita: %s" -#: src/webdav.c:1816 +#: src/webdav.c:1901 msgid " accepted by user" msgstr " přijat uživatelem" diff --git a/po/davfs2.pot b/po/davfs2.pot index 19fd797..3a4b0e9 100644 --- a/po/davfs2.pot +++ b/po/davfs2.pot @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: davfs2 1.4.6\n" "Report-Msgid-Bugs-To: http://savannah.nongnu.org/support/?" "func=additem&group=davfs2\n" -"POT-Creation-Date: 2014-04-05 22:21+0200\n" +"POT-Creation-Date: 2014-04-20 10:43+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,124 +18,139 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: src/cache.c:650 +#: src/cache.c:655 #, c-format msgid "" "connection timed out two times;\n" "trying one last time" msgstr "" -#: src/cache.c:655 +#: src/cache.c:660 #, c-format msgid "Last try succeeded.\n" msgstr "" -#: src/cache.c:658 +#: src/cache.c:663 #, c-format msgid "" "server temporarily unreachable;\n" "mounting anyway" msgstr "" -#: src/cache.c:661 +#: src/cache.c:666 #, c-format msgid "" "Mounting failed.\n" "%s" msgstr "" -#: src/cache.c:700 +#: src/cache.c:705 #, c-format msgid "can't replace %s with %s" msgstr "" -#: src/cache.c:704 +#: src/cache.c:709 #, c-format msgid "error writing new index file %s" msgstr "" -#: src/cache.c:708 +#: src/cache.c:713 #, c-format msgid "can't create new index file for %s" msgstr "" -#: src/cache.c:911 +#: src/cache.c:920 #, c-format msgid "" "File %s exists on the server but should not. Maybe it is an error in the " "server's LOCK impementation. You may try option 'use_locks 0' in davfs2.conf." msgstr "" -#: src/cache.c:2376 src/cache.c:2409 +#: src/cache.c:2392 src/cache.c:2425 #, c-format msgid "can't create cache file %s" msgstr "" -#: src/cache.c:2424 +#: src/cache.c:2440 #, c-format msgid "error writing directory %s" msgstr "" -#: src/cache.c:2586 src/mount_davfs.c:1036 +#: src/cache.c:2602 src/mount_davfs.c:1036 #, c-format msgid "can't read user data base" msgstr "" -#: src/cache.c:2598 +#: src/cache.c:2614 #, c-format msgid "can't open cache directory %s" msgstr "" -#: src/cache.c:2613 +#: src/cache.c:2629 #, c-format msgid "can't create cache directory %s" msgstr "" -#: src/cache.c:2620 +#: src/cache.c:2636 #, c-format msgid "can't access cache directory %s" msgstr "" -#: src/cache.c:2623 +#: src/cache.c:2639 #, c-format msgid "wrong owner of cache directory %s" msgstr "" -#: src/cache.c:2627 +#: src/cache.c:2643 #, c-format msgid "wrong permissions set for cache directory %s" msgstr "" -#: src/cache.c:2657 +#: src/cache.c:2673 msgid "found orphaned file in cache:" msgstr "" -#: src/cache.c:2730 +#: src/cache.c:2746 #, c-format msgid "error parsing %s" msgstr "" -#: src/cache.c:2731 +#: src/cache.c:2747 #, c-format msgid " at line %i" msgstr "" -#: src/cache.c:2776 +#: src/cache.c:2792 #, c-format msgid "open files exceed max cache size by %llu MiBytes" msgstr "" -#: src/kernel_interface.c:219 +#: src/kernel_interface.c:220 #, c-format msgid "can't allocate message buffer" msgstr "" -#: src/kernel_interface.c:246 +#: src/kernel_interface.c:234 +#, c-format +msgid "loading kernel module fuse" +msgstr "" + +#: src/kernel_interface.c:248 +#, c-format +msgid "loading kernel module fuse failed" +msgstr "" + +#: src/kernel_interface.c:254 +#, c-format +msgid "waiting for %s to be created" +msgstr "" + +#: src/kernel_interface.c:262 #, c-format msgid "can't open fuse device" msgstr "" -#: src/kernel_interface.c:254 +#: src/kernel_interface.c:270 #, c-format msgid "mounting failed" msgstr "" @@ -418,84 +433,84 @@ msgstr "" msgid "pid %i, got signal %i" msgstr "" -#: src/mount_davfs.c:1252 +#: src/mount_davfs.c:1254 #, c-format msgid "can't create file %s" msgstr "" -#: src/mount_davfs.c:1256 +#: src/mount_davfs.c:1258 #, c-format msgid "can't lock file %s" msgstr "" -#: src/mount_davfs.c:1278 +#: src/mount_davfs.c:1280 #, c-format msgid "" "Warning: can't write entry into %s, but will mount the file system anyway" msgstr "" -#: src/mount_davfs.c:1314 +#: src/mount_davfs.c:1316 #, c-format msgid "option %s has invalid argument;it must be a decimal number" msgstr "" -#: src/mount_davfs.c:1317 +#: src/mount_davfs.c:1319 #, c-format msgid "option %s has invalid argument;it must be an octal number" msgstr "" -#: src/mount_davfs.c:1320 +#: src/mount_davfs.c:1322 #, c-format msgid "option %s has invalid argument;it must be a number" msgstr "" -#: src/mount_davfs.c:1562 +#: src/mount_davfs.c:1565 #, c-format msgid "option %s requires argument" msgstr "" -#: src/mount_davfs.c:1655 +#: src/mount_davfs.c:1652 #, c-format msgid "Unknown option %s.\n" msgstr "" -#: src/mount_davfs.c:2025 +#: src/mount_davfs.c:2023 #, c-format msgid "can't read certificate %s" msgstr "" -#: src/mount_davfs.c:2057 src/mount_davfs.c:2070 +#: src/mount_davfs.c:2055 src/mount_davfs.c:2068 #, c-format msgid "can't read client certificate %s" msgstr "" -#: src/mount_davfs.c:2061 +#: src/mount_davfs.c:2059 #, c-format msgid "client certificate file %s has wrong owner" msgstr "" -#: src/mount_davfs.c:2065 +#: src/mount_davfs.c:2063 #, c-format msgid "client certificate file %s has wrong permissions" msgstr "" -#: src/mount_davfs.c:2087 src/mount_davfs.c:2317 +#: src/mount_davfs.c:2085 src/mount_davfs.c:2314 #, c-format msgid "opening %s failed" msgstr "" -#: src/mount_davfs.c:2108 src/mount_davfs.c:2153 src/mount_davfs.c:2247 -#: src/mount_davfs.c:2344 src/mount_davfs.c:2402 src/mount_davfs.c:2415 +#: src/mount_davfs.c:2106 src/mount_davfs.c:2150 src/mount_davfs.c:2244 +#: src/mount_davfs.c:2341 src/mount_davfs.c:2399 src/mount_davfs.c:2412 #, c-format msgid "malformed line" msgstr "" -#: src/mount_davfs.c:2225 src/mount_davfs.c:2241 +#: src/mount_davfs.c:2222 src/mount_davfs.c:2238 #, c-format msgid "unknown option" msgstr "" -#: src/mount_davfs.c:2547 +#: src/mount_davfs.c:2544 #, c-format msgid "" "Usage:\n" @@ -504,14 +519,14 @@ msgid "" "\n" msgstr "" -#: src/mount_davfs.c:2551 +#: src/mount_davfs.c:2548 #, c-format msgid "" "To mount a WebDAV-resource don't call %s directly, but use\n" "`mount' instead.\n" msgstr "" -#: src/mount_davfs.c:2553 +#: src/mount_davfs.c:2550 #, c-format msgid "" " mount : or\n" @@ -519,7 +534,7 @@ msgid "" " /etc/fstab.\n" msgstr "" -#: src/mount_davfs.c:2556 +#: src/mount_davfs.c:2553 #, c-format msgid "" " mount -t davfs [-o options]\n" @@ -530,7 +545,7 @@ msgid "" "\n" msgstr "" -#: src/mount_davfs.c:2561 +#: src/mount_davfs.c:2558 #, c-format msgid "" "Recognised options:\n" @@ -541,13 +556,15 @@ msgid "" " dir_mode= : default directory mode (octal)\n" msgstr "" -#: src/mount_davfs.c:2567 +#: src/mount_davfs.c:2564 #, c-format msgid "" " ro : mount read-only\n" " rw : mount read-write\n" " [no]exec : (don't) allow execution of binaries\n" " [no]suid : (don't) allow suid and sgid bits to take effect\n" +" [no]grpid : new files (don't) get the group id of the directory\n" +" in which they are created.\n" " [no]_netdev : (no) network connection needed\n" msgstr "" @@ -620,96 +637,96 @@ msgstr "" msgid "an error occured while waiting; please wait for %s to terminate" msgstr "" -#: src/webdav.c:338 +#: src/webdav.c:340 #, c-format msgid "socket library initialization failed" msgstr "" -#: src/webdav.c:350 +#: src/webdav.c:352 #, c-format msgid "can't open stream to log neon-messages" msgstr "" -#: src/webdav.c:381 +#: src/webdav.c:383 #, c-format msgid "neon library does not support TLS/SSL" msgstr "" -#: src/webdav.c:442 src/webdav.c:445 +#: src/webdav.c:449 src/webdav.c:452 #, c-format msgid "mounting failed; the server does not support WebDAV" msgstr "" -#: src/webdav.c:453 +#: src/webdav.c:460 #, c-format msgid "warning: the server does not support locks" msgstr "" -#: src/webdav.c:1465 +#: src/webdav.c:1485 msgid "authentication failure:" msgstr "" -#: src/webdav.c:1503 +#: src/webdav.c:1523 #, c-format msgid "%i can't open cache file" msgstr "" -#: src/webdav.c:1511 +#: src/webdav.c:1531 #, c-format msgid "%i error writing to cache file" msgstr "" -#: src/webdav.c:1741 src/webdav.c:1770 src/webdav.c:1807 +#: src/webdav.c:1826 src/webdav.c:1855 src/webdav.c:1892 #, c-format msgid "the server certificate is not trusted" msgstr "" -#: src/webdav.c:1750 src/webdav.c:1753 +#: src/webdav.c:1835 src/webdav.c:1838 #, c-format msgid "error processing server certificate" msgstr "" -#: src/webdav.c:1764 src/webdav.c:1798 +#: src/webdav.c:1849 src/webdav.c:1883 #, c-format msgid "the server certificate is not yet valid" msgstr "" -#: src/webdav.c:1766 src/webdav.c:1801 +#: src/webdav.c:1851 src/webdav.c:1886 #, c-format msgid "the server certificate has expired" msgstr "" -#: src/webdav.c:1768 src/webdav.c:1804 +#: src/webdav.c:1853 src/webdav.c:1889 #, c-format msgid "the server certificate does not match the server name" msgstr "" -#: src/webdav.c:1772 src/webdav.c:1810 +#: src/webdav.c:1857 src/webdav.c:1895 #, c-format msgid "unknown certificate error" msgstr "" -#: src/webdav.c:1773 +#: src/webdav.c:1858 #, c-format msgid " issuer: %s" msgstr "" -#: src/webdav.c:1775 +#: src/webdav.c:1860 #, c-format msgid " subject: %s" msgstr "" -#: src/webdav.c:1777 +#: src/webdav.c:1862 #, c-format msgid " identity: %s" msgstr "" -#: src/webdav.c:1779 +#: src/webdav.c:1864 #, c-format msgid " fingerprint: %s" msgstr "" -#: src/webdav.c:1781 +#: src/webdav.c:1866 #, c-format msgid "" "You only should accept this certificate, if you can\n" @@ -717,26 +734,26 @@ msgid "" "or there might be a man-in-the-middle-attack.\n" msgstr "" -#: src/webdav.c:1784 +#: src/webdav.c:1869 #, c-format msgid "Accept certificate for this session? [y,N] " msgstr "" -#: src/webdav.c:1811 +#: src/webdav.c:1896 #, c-format msgid " issuer: %s" msgstr "" -#: src/webdav.c:1812 +#: src/webdav.c:1897 #, c-format msgid " subject: %s" msgstr "" -#: src/webdav.c:1813 +#: src/webdav.c:1898 #, c-format msgid " identity: %s" msgstr "" -#: src/webdav.c:1816 +#: src/webdav.c:1901 msgid " accepted by user" msgstr "" diff --git a/po/de.po b/po/de.po index 8827d48..9bc9c3c 100644 --- a/po/de.po +++ b/po/de.po @@ -1,5 +1,5 @@ # davfs2 messages de. -# Copyright (C) 2008, 2009, 2013 Werner Baumann +# Copyright (C) 2008, 2009, 2013, 2014 Werner Baumann # This file is distributed under the same license as the PACKAGE package. # Werner Baumann , 2009. # @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: davfs2 1.5.0\n" "Report-Msgid-Bugs-To: http://savannah.nongnu.org/support/?" "func=additem&group=davfs2\n" -"POT-Creation-Date: 2014-04-05 22:21+0200\n" -"PO-Revision-Date: 2014-04-05 22:23+0200\n" +"POT-Creation-Date: 2014-04-20 10:43+0200\n" +"PO-Revision-Date: 2014-04-20 10:49+0200\n" "Last-Translator: Werner Baumann \n" "Language-Team: \n" "Language: de\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: src/cache.c:650 +#: src/cache.c:655 #, c-format msgid "" "connection timed out two times;\n" @@ -26,12 +26,12 @@ msgstr "" "die Verbindung wurde zweimal wegen Zeitüberschreitung abgebrochen;\n" "ich versuche es zum letzten mal" -#: src/cache.c:655 +#: src/cache.c:660 #, c-format msgid "Last try succeeded.\n" msgstr "Der letzte Versuch war erfolgreich.\n" -#: src/cache.c:658 +#: src/cache.c:663 #, c-format msgid "" "server temporarily unreachable;\n" @@ -40,7 +40,7 @@ msgstr "" "der Server ist zur Zeit nicht erreichbar;\n" "das Dateisystem wird trotzdem eingehängt" -#: src/cache.c:661 +#: src/cache.c:666 #, c-format msgid "" "Mounting failed.\n" @@ -49,22 +49,22 @@ msgstr "" "das Einhängen schlug fehl;\n" "%s" -#: src/cache.c:700 +#: src/cache.c:705 #, c-format msgid "can't replace %s with %s" msgstr "kann %s nicht durch %s ersetzen" -#: src/cache.c:704 +#: src/cache.c:709 #, c-format msgid "error writing new index file %s" msgstr "Fehler beim Schreiben der neuen Indexdatei %s" -#: src/cache.c:708 +#: src/cache.c:713 #, c-format msgid "can't create new index file for %s" msgstr "kann keine neue Indexdatei für %s erzeugen" -#: src/cache.c:911 +#: src/cache.c:920 #, c-format msgid "" "File %s exists on the server but should not. Maybe it is an error in the " @@ -74,78 +74,93 @@ msgstr "" "behandelt der Server LOCK-Requests fehlerhaft. Du kannst es mit der Option " "'use_locks 0' in davfs2.conf versuchen." -#: src/cache.c:2376 src/cache.c:2409 +#: src/cache.c:2392 src/cache.c:2425 #, c-format msgid "can't create cache file %s" msgstr "kann die Cachedatei %s nicht erzeugen" -#: src/cache.c:2424 +#: src/cache.c:2440 #, c-format msgid "error writing directory %s" msgstr "Fehler beim Schreiben des Verzeichnisses %s" -#: src/cache.c:2586 src/mount_davfs.c:1036 +#: src/cache.c:2602 src/mount_davfs.c:1036 #, c-format msgid "can't read user data base" msgstr "kann die Benutzerdatenbank nicht lesen" -#: src/cache.c:2598 +#: src/cache.c:2614 #, c-format msgid "can't open cache directory %s" msgstr "kann das Cacheverzeichnis %s nicht öffnen" -#: src/cache.c:2613 +#: src/cache.c:2629 #, c-format msgid "can't create cache directory %s" msgstr "kann das Cacheverzeichnis %s nicht erzeugen" -#: src/cache.c:2620 +#: src/cache.c:2636 #, c-format msgid "can't access cache directory %s" msgstr "Zugriff auf das Cachverzeichnis %s verweigert" -#: src/cache.c:2623 +#: src/cache.c:2639 #, c-format msgid "wrong owner of cache directory %s" msgstr "das Cacheverzeichnis %s hat den falschen Besitzer" -#: src/cache.c:2627 +#: src/cache.c:2643 #, c-format msgid "wrong permissions set for cache directory %s" msgstr "das Cachverzeichnis %s hat die falschen Dateirechte" -#: src/cache.c:2657 +#: src/cache.c:2673 msgid "found orphaned file in cache:" msgstr "fand verwaiste Datei im Cache:" -#: src/cache.c:2730 +#: src/cache.c:2746 #, c-format msgid "error parsing %s" msgstr "Syntaxfehler in %s" -#: src/cache.c:2731 +#: src/cache.c:2747 #, c-format msgid " at line %i" msgstr " in Zeile %i" -#: src/cache.c:2776 +#: src/cache.c:2792 #, c-format msgid "open files exceed max cache size by %llu MiBytes" msgstr "" "Die Größe der offenen Dateien überschreitet die maximale Größe des Cache um " "%llu MiBytes" -#: src/kernel_interface.c:219 +#: src/kernel_interface.c:220 #, c-format msgid "can't allocate message buffer" msgstr "kein Speicher für den Nachrichtenpuffer verfügbar" -#: src/kernel_interface.c:246 +#: src/kernel_interface.c:234 +#, c-format +msgid "loading kernel module fuse" +msgstr "lade das Kernel_Modul fuse" + +#: src/kernel_interface.c:248 +#, c-format +msgid "loading kernel module fuse failed" +msgstr "das Laden des Kernel-Moduls fuse schlug fehl" + +#: src/kernel_interface.c:254 +#, c-format +msgid "waiting for %s to be created" +msgstr "warte auf des Einrichten von %s" + +#: src/kernel_interface.c:262 #, c-format msgid "can't open fuse device" msgstr "kann die fuse-Gerätedatei nicht öffnen" -#: src/kernel_interface.c:254 +#: src/kernel_interface.c:270 #, c-format msgid "mounting failed" msgstr "das Aushängen schlug fehl" @@ -447,17 +462,17 @@ msgstr "kann das Zertifikat %s nicht entschlüsseln" msgid "pid %i, got signal %i" msgstr "PID %i, erhielt Signal %i" -#: src/mount_davfs.c:1252 +#: src/mount_davfs.c:1254 #, c-format msgid "can't create file %s" msgstr "kann die Datei %s nicht erzeugen" -#: src/mount_davfs.c:1256 +#: src/mount_davfs.c:1258 #, c-format msgid "can't lock file %s" msgstr "kann die Datei %s nicht sperren" -#: src/mount_davfs.c:1278 +#: src/mount_davfs.c:1280 #, c-format msgid "" "Warning: can't write entry into %s, but will mount the file system anyway" @@ -465,72 +480,72 @@ msgstr "" "Warnung: kann keinen Eintrag in die Datei %s schreiben, hänge das " "Dateisystem trotzdem ein." -#: src/mount_davfs.c:1314 +#: src/mount_davfs.c:1316 #, c-format msgid "option %s has invalid argument;it must be a decimal number" msgstr "das Argument der Option %s ist ungültig; es muss eine Dezimalzahl sein" -#: src/mount_davfs.c:1317 +#: src/mount_davfs.c:1319 #, c-format msgid "option %s has invalid argument;it must be an octal number" msgstr "das Argument der Option %s ist ungültig; es muss eine Oktalzahl sein" -#: src/mount_davfs.c:1320 +#: src/mount_davfs.c:1322 #, c-format msgid "option %s has invalid argument;it must be a number" msgstr "das Argument der Option %s ist ungültig; es muss eine Zahl sein" -#: src/mount_davfs.c:1562 +#: src/mount_davfs.c:1565 #, c-format msgid "option %s requires argument" msgstr "die Option %s verlangt ein Argument" -#: src/mount_davfs.c:1655 +#: src/mount_davfs.c:1652 #, c-format msgid "Unknown option %s.\n" msgstr "unbekannte Option %s.\n" -#: src/mount_davfs.c:2025 +#: src/mount_davfs.c:2023 #, c-format msgid "can't read certificate %s" msgstr "kann das Zertifikat %s nicht lesen" -#: src/mount_davfs.c:2057 src/mount_davfs.c:2070 +#: src/mount_davfs.c:2055 src/mount_davfs.c:2068 #, c-format msgid "can't read client certificate %s" msgstr "kann das Client-Zertifikat %s nicht lesen" -#: src/mount_davfs.c:2061 +#: src/mount_davfs.c:2059 #, c-format msgid "client certificate file %s has wrong owner" msgstr "" "die Datei %s\n" "des Client-Zertifikats hat den falschen Besitzer" -#: src/mount_davfs.c:2065 +#: src/mount_davfs.c:2063 #, c-format msgid "client certificate file %s has wrong permissions" msgstr "" "die Dateirechte für das Cient-Zertifikat\n" "%s sind falsch" -#: src/mount_davfs.c:2087 src/mount_davfs.c:2317 +#: src/mount_davfs.c:2085 src/mount_davfs.c:2314 #, c-format msgid "opening %s failed" msgstr "konnte %s nicht öffnen" -#: src/mount_davfs.c:2108 src/mount_davfs.c:2153 src/mount_davfs.c:2247 -#: src/mount_davfs.c:2344 src/mount_davfs.c:2402 src/mount_davfs.c:2415 +#: src/mount_davfs.c:2106 src/mount_davfs.c:2150 src/mount_davfs.c:2244 +#: src/mount_davfs.c:2341 src/mount_davfs.c:2399 src/mount_davfs.c:2412 #, c-format msgid "malformed line" msgstr "Syntaxfehler in der Zeile" -#: src/mount_davfs.c:2225 src/mount_davfs.c:2241 +#: src/mount_davfs.c:2222 src/mount_davfs.c:2238 #, c-format msgid "unknown option" msgstr "unbekannte Option" -#: src/mount_davfs.c:2547 +#: src/mount_davfs.c:2544 #, c-format msgid "" "Usage:\n" @@ -543,7 +558,7 @@ msgstr "" " %s -h, --help : diese Hilfe anzeigen\n" "\n" -#: src/mount_davfs.c:2551 +#: src/mount_davfs.c:2548 #, c-format msgid "" "To mount a WebDAV-resource don't call %s directly, but use\n" @@ -552,7 +567,7 @@ msgstr "" "Um eine WebDAV-Resource zu einzuhängen, sollte %s nicht direkt\n" "aufgerufen werden; stattdessen sollte „mount” benutzt werden.\n" -#: src/mount_davfs.c:2553 +#: src/mount_davfs.c:2550 #, c-format msgid "" " mount : or\n" @@ -563,7 +578,7 @@ msgstr "" " mount : hänge die WebDAV-Resource entsprechend den\n" " Angaben in /etc/fstab ein.\n" -#: src/mount_davfs.c:2556 +#: src/mount_davfs.c:2553 #, c-format msgid "" " mount -t davfs [-o options]\n" @@ -580,7 +595,7 @@ msgstr "" " Kommas unterteilte Liste von Optionen.\n" "\n" -#: src/mount_davfs.c:2561 +#: src/mount_davfs.c:2558 #, c-format msgid "" "Recognised options:\n" @@ -597,19 +612,23 @@ msgstr "" " file_mode= : Standard-Rechte für Dateien (oktal)\n" " dir_mode= : Standard-Rechte für Verzeichnisse (oktal)\n" -#: src/mount_davfs.c:2567 +#: src/mount_davfs.c:2564 #, c-format msgid "" " ro : mount read-only\n" " rw : mount read-write\n" " [no]exec : (don't) allow execution of binaries\n" " [no]suid : (don't) allow suid and sgid bits to take effect\n" +" [no]grpid : new files (don't) get the group id of the directory\n" +" in which they are created.\n" " [no]_netdev : (no) network connection needed\n" msgstr "" " ro : nur Lesen\n" " rw : Lesen und Schreiben\n" " [no]exec : Ausführen von Programmdateien ist (nicht) erlaubt\n" " [no]suid : gesetzte suid- und sgid-Bits sind (nicht) wirksam\n" +" [no]grpid : neue Dateien erhelten die gid des übergeordneten\n" +" Verzeichnisses\n" " [no]_nedev : benötigt (keine) Netzwerkverbindung\n" #: src/umount_davfs.c:98 @@ -708,96 +727,96 @@ msgid "an error occured while waiting; please wait for %s to terminate" msgstr "" "während des Wartens trat ein Fehler auf; bitte warte bis der %s-Prozess endet" -#: src/webdav.c:338 +#: src/webdav.c:340 #, c-format msgid "socket library initialization failed" msgstr "die socket-Bibliothek konnte nicht initialisiert werden" -#: src/webdav.c:350 +#: src/webdav.c:352 #, c-format msgid "can't open stream to log neon-messages" msgstr "kann die Ausgabe für neon-Log-Meldungen nicht öffnen" -#: src/webdav.c:381 +#: src/webdav.c:383 #, c-format msgid "neon library does not support TLS/SSL" msgstr "die Neon-Bibliothek uterstützt TLS/SSL nicht" -#: src/webdav.c:442 src/webdav.c:445 +#: src/webdav.c:449 src/webdav.c:452 #, c-format msgid "mounting failed; the server does not support WebDAV" msgstr "das Einhängen schlug fehl; der Server unterstützt WebDAV nicht" -#: src/webdav.c:453 +#: src/webdav.c:460 #, c-format msgid "warning: the server does not support locks" msgstr "Warnung: der Server kann Dateien nicht sperren" -#: src/webdav.c:1465 +#: src/webdav.c:1485 msgid "authentication failure:" msgstr "Authentifizierungsfehler" -#: src/webdav.c:1503 +#: src/webdav.c:1523 #, c-format msgid "%i can't open cache file" msgstr "%i kann die Cache-Datei nicht öffnen" -#: src/webdav.c:1511 +#: src/webdav.c:1531 #, c-format msgid "%i error writing to cache file" msgstr "%i Fehler beim Schreiben der Cache-Datei" -#: src/webdav.c:1741 src/webdav.c:1770 src/webdav.c:1807 +#: src/webdav.c:1826 src/webdav.c:1855 src/webdav.c:1892 #, c-format msgid "the server certificate is not trusted" msgstr "wir trauen dem Zertifikat nicht" -#: src/webdav.c:1750 src/webdav.c:1753 +#: src/webdav.c:1835 src/webdav.c:1838 #, c-format msgid "error processing server certificate" msgstr "Fehler beim Analysieren des Server-Zertifikats" -#: src/webdav.c:1764 src/webdav.c:1798 +#: src/webdav.c:1849 src/webdav.c:1883 #, c-format msgid "the server certificate is not yet valid" msgstr "das Server-Zertifikat ist noch nicht gültig" -#: src/webdav.c:1766 src/webdav.c:1801 +#: src/webdav.c:1851 src/webdav.c:1886 #, c-format msgid "the server certificate has expired" msgstr "das Server-Zertifikat ist nicht mehr gültig" -#: src/webdav.c:1768 src/webdav.c:1804 +#: src/webdav.c:1853 src/webdav.c:1889 #, c-format msgid "the server certificate does not match the server name" msgstr "das Server-Zertifikat passt nicht zum Namen des Servers" -#: src/webdav.c:1772 src/webdav.c:1810 +#: src/webdav.c:1857 src/webdav.c:1895 #, c-format msgid "unknown certificate error" msgstr "Fehler beim Analysieren des Server-Zertifikats" -#: src/webdav.c:1773 +#: src/webdav.c:1858 #, c-format msgid " issuer: %s" msgstr " Aussteller: %s" -#: src/webdav.c:1775 +#: src/webdav.c:1860 #, c-format msgid " subject: %s" msgstr " Inhaber: %s" -#: src/webdav.c:1777 +#: src/webdav.c:1862 #, c-format msgid " identity: %s" msgstr " Name: %s" -#: src/webdav.c:1779 +#: src/webdav.c:1864 #, c-format msgid " fingerprint: %s" msgstr " Fingerabdruck: %s" -#: src/webdav.c:1781 +#: src/webdav.c:1866 #, c-format msgid "" "You only should accept this certificate, if you can\n" @@ -808,26 +827,26 @@ msgstr "" "dass der Fingerabdruck stimmt. Der Server könnte gefälscht sein oder\n" "ein Angreifer könnte sich in die Verbindung zum Server eingeschaltet haben.\n" -#: src/webdav.c:1784 +#: src/webdav.c:1869 #, c-format msgid "Accept certificate for this session? [y,N] " msgstr "Ich akzeptiere das Zertifikat für diese Sitzung [j,N]: " -#: src/webdav.c:1811 +#: src/webdav.c:1896 #, c-format msgid " issuer: %s" msgstr " Aussteller des Zertifikats: %s" -#: src/webdav.c:1812 +#: src/webdav.c:1897 #, c-format msgid " subject: %s" msgstr " Inhaber des Zertifikats: %s" -#: src/webdav.c:1813 +#: src/webdav.c:1898 #, c-format msgid " identity: %s" msgstr " Name: %s" -#: src/webdav.c:1816 +#: src/webdav.c:1901 msgid " accepted by user" msgstr " durch den Benutzer akzeptiert" diff --git a/src/kernel_interface.c b/src/kernel_interface.c index 08ee0f6..dca77f0 100644 --- a/src/kernel_interface.c +++ b/src/kernel_interface.c @@ -58,6 +58,7 @@ #ifdef HAVE_SYS_TYPES_H #include #endif +#include #include "xalloc.h" #include "xvasprintf.h" @@ -228,16 +229,31 @@ dav_init_kernel_interface(const char *url, const char *mpoint, char *path = xasprintf("%s/%s", DAV_DEV_DIR, FUSE_DEV_NAME); fuse_device = open(path, O_RDWR | O_NONBLOCK); - if (fuse_device <= 0 && system("/sbin/modprobe fuse &>/dev/null") == 0) { - fuse_device = open(path, O_RDWR | O_NONBLOCK); - } + if (fuse_device <= 0) { - if (mknod(path, S_IFCHR, makedev(MISC_MAJOR, FUSE_MINOR)) == 0) { - if (chown(path, 0, 0) == 0 && chmod(path, S_IRUSR | S_IWUSR) == 0) { - fuse_device = open(path, O_RDWR | O_NONBLOCK); - } else { - remove(path); - } + error(0, 0, _("loading kernel module fuse")); + int ret; + pid_t pid = fork(); + if (pid == 0) { + execl("/sbin/modprobe", "modprobe", "fuse", NULL); + _exit(EXIT_FAILURE); + } else if (pid < 0) { + ret = -1; + } else { + if (waitpid(pid, &ret, 0) != pid) + ret = -1; + } + + if (ret) { + error(0, 0, _("loading kernel module fuse failed")); + } else { + fuse_device = open(path, O_RDWR | O_NONBLOCK); + } + + if (fuse_device <= 0) { + error(0, 0, _("waiting for %s to be created"), path); + sleep(2); + fuse_device = open(path, O_RDWR | O_NONBLOCK); } }