From 3fc6dde15cf47b0cc837fb513ea7b91a12df8ae0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 24 Nov 2010 20:02:09 +0000 Subject: [PATCH] Version 1.7.13. --- BUGS | 10 +- configure.ac | 2 +- po-docs/ja.po | 1142 +++++++++++++++++++++---------------------- po-docs/libguestfs-docs.pot | 1123 +++++++++++++++++++++--------------------- po/es.po | 37 +- po/gu.po | 36 +- po/hi.po | 36 +- po/kn.po | 37 +- po/libguestfs.pot | 18 +- po/ml.po | 36 +- po/mr.po | 36 +- po/nl.po | 36 +- po/or.po | 36 +- po/pa.po | 36 +- po/pl.po | 40 +- po/ta.po | 36 +- po/te.po | 36 +- 17 files changed, 1474 insertions(+), 1259 deletions(-) diff --git a/BUGS b/BUGS index 64192a6..5997960 100644 --- a/BUGS +++ b/BUGS @@ -1,5 +1,5 @@ -NOTE: This file is automatically generated from "update-bugs". -Last updated: 2010-11-23 10:39:18 +NOTE: This file is automatically generated from "update-bugs.sh". +Last updated: 2010-11-24 20:19:37 This contains a local list of the bugs that are open against libguestfs. Bugs are tracked in the Red Hat Bugzilla database @@ -146,9 +146,6 @@ Bugs in NEW or ASSIGNED state are open and waiting for someone to fix. 646361 NEW https://bugzilla.redhat.com/show_bug.cgi?id=646361 Fix appliance building Fedora-on-Debian (on systems with default library search paths differing from the appliance's) -655554 NEW https://bugzilla.redhat.com/show_bug.cgi?id=655554 - Whole disk paths are not made canonical by virt-inspector - 501882 ASSIGNED https://bugzilla.redhat.com/show_bug.cgi?id=501882 /tmp/libguestfs temporary directory is not cleaned up @@ -312,6 +309,9 @@ You can help by testing the fixes. 652796 MODIFIED https://bugzilla.redhat.com/show_bug.cgi?id=652796 ruby bindings not installed by 'make install', hence omitted from the binary distribution +655554 MODIFIED https://bugzilla.redhat.com/show_bug.cgi?id=655554 + Whole disk paths are not made canonical by virt-inspector + -------------------------------------------------- These bugs are in the VERIFIED state. diff --git a/configure.ac b/configure.ac index 4d5e268..ef93b64 100644 --- a/configure.ac +++ b/configure.ac @@ -18,7 +18,7 @@ # major/minor/release must be numbers m4_define([libguestfs_major], [1]) m4_define([libguestfs_minor], [7]) -m4_define([libguestfs_release], [12]) +m4_define([libguestfs_release], [13]) # extra can be any string m4_define([libguestfs_extra], []) diff --git a/po-docs/ja.po b/po-docs/ja.po index 1645a0d..90a22b7 100644 --- a/po-docs/ja.po +++ b/po-docs/ja.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: libguestfs@redhat.com\n" -"POT-Creation-Date: 2010-11-23 10:39+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-09-02 14:46+0100\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -145,13 +145,20 @@ msgid "" "introduction, please read the L section next." msgstr "" -# type: =head1 +# type: textblock #: ../src/guestfs.pod:55 +msgid "" +"There are also some example programs in the L manual " +"page." +msgstr "" + +# type: =head1 +#: ../src/guestfs.pod:58 msgid "API OVERVIEW" msgstr "" # type: textblock -#: ../src/guestfs.pod:57 +#: ../src/guestfs.pod:60 msgid "" "This section provides a gentler overview of the libguestfs API. We also try " "to group API calls together, where that may not be obvious from reading " @@ -159,12 +166,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:62 +#: ../src/guestfs.pod:65 msgid "HANDLES" msgstr "" # type: textblock -#: ../src/guestfs.pod:64 +#: ../src/guestfs.pod:67 msgid "" "Before you can use libguestfs calls, you have to create a handle. Then you " "must add at least one disk image to the handle, followed by launching the " @@ -174,12 +181,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:71 +#: ../src/guestfs.pod:74 msgid "The general structure of all libguestfs-using programs looks like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:74 +#: ../src/guestfs.pod:77 #, no-wrap msgid "" " guestfs_h *g = guestfs_create ();\n" @@ -187,7 +194,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:76 +#: ../src/guestfs.pod:79 #, no-wrap msgid "" " /* Call guestfs_add_drive additional times if there are\n" @@ -198,7 +205,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:81 +#: ../src/guestfs.pod:84 #, no-wrap msgid "" " /* Most manipulation calls won't work until you've launched\n" @@ -210,7 +217,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:87 +#: ../src/guestfs.pod:90 #, no-wrap msgid "" " /* Now you can examine what partitions, LVs etc are available.\n" @@ -221,7 +228,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:92 +#: ../src/guestfs.pod:95 #, no-wrap msgid "" " /* To access a filesystem in the image, you must mount it.\n" @@ -231,7 +238,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:96 +#: ../src/guestfs.pod:99 #, no-wrap msgid "" " /* Now you can perform filesystem actions on the guest\n" @@ -242,7 +249,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:101 +#: ../src/guestfs.pod:104 #, no-wrap msgid "" " /* You only need to call guestfs_sync if you have made\n" @@ -255,7 +262,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:108 +#: ../src/guestfs.pod:111 #, no-wrap msgid "" " /* Close the handle 'g'. */\n" @@ -264,7 +271,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:111 +#: ../src/guestfs.pod:114 msgid "" "The code above doesn't include any error checking. In real code you should " "check return values carefully for errors. In general all functions that " @@ -275,12 +282,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:119 +#: ../src/guestfs.pod:122 msgid "DISK IMAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:121 +#: ../src/guestfs.pod:124 msgid "" "The image filename (C<\"guest.img\"> in the example above) could be a disk " "image from a virtual machine, a L copy of a physical hard disk, an " @@ -290,7 +297,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:127 +#: ../src/guestfs.pod:130 msgid "" "The call you should use in modern code for adding drives is L. To add a disk image, allowing writes, and " @@ -298,7 +305,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:131 +#: ../src/guestfs.pod:134 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -308,12 +315,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:135 +#: ../src/guestfs.pod:138 msgid "You can add a disk read-only using:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:137 +#: ../src/guestfs.pod:140 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -324,14 +331,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:142 +#: ../src/guestfs.pod:145 msgid "" "or by calling the older function L. In either case " "libguestfs won't modify the file." msgstr "" # type: textblock -#: ../src/guestfs.pod:145 +#: ../src/guestfs.pod:148 msgid "" "Be extremely cautious if the disk image is in use, eg. if it is being used " "by a virtual machine. Adding it read-write will almost certainly cause disk " @@ -339,7 +346,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:149 +#: ../src/guestfs.pod:152 msgid "" "You must add at least one disk image, and you may add multiple disk images. " "In the API, the disk images are usually referred to as C (for the " @@ -347,7 +354,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:154 +#: ../src/guestfs.pod:157 msgid "" "Once L has been called you cannot add any more images. You " "can call L to get a list of the device names, in the " @@ -355,12 +362,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:159 +#: ../src/guestfs.pod:162 msgid "MOUNTING" msgstr "" # type: textblock -#: ../src/guestfs.pod:161 +#: ../src/guestfs.pod:164 msgid "" "Before you can read or write files, create directories and so on in a disk " "image that contains filesystems, you have to mount those filesystems using " @@ -370,7 +377,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:167 +#: ../src/guestfs.pod:170 #, no-wrap msgid "" " guestfs_mount (g, \"/dev/sda1\", \"/\");\n" @@ -378,7 +385,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:169 +#: ../src/guestfs.pod:172 msgid "" "where C means literally the first partition (C<1>) of the first " "disk image that we added (C). If the disk contains Linux LVM2 " @@ -386,7 +393,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:173 +#: ../src/guestfs.pod:176 msgid "" "If you are given a disk image and you don't know what it contains then you " "have to find out. Libguestfs can do that too: use L. There are " "several other variations of the C call." msgstr "" # type: =head2 -#: ../src/guestfs.pod:186 +#: ../src/guestfs.pod:189 msgid "FILESYSTEM ACCESS AND MODIFICATION" msgstr "" # type: textblock -#: ../src/guestfs.pod:188 +#: ../src/guestfs.pod:191 msgid "" "The majority of the libguestfs API consists of fairly low-level calls for " "accessing and modifying the files, directories, symlinks etc on mounted " @@ -421,21 +428,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:194 +#: ../src/guestfs.pod:197 msgid "" "Specify filenames as full paths, starting with C<\"/\"> and including the " "mount point." msgstr "" # type: textblock -#: ../src/guestfs.pod:197 +#: ../src/guestfs.pod:200 msgid "" "For example, if you mounted a filesystem at C<\"/\"> and you want to read " "the file called C<\"etc/passwd\"> then you could do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:200 +#: ../src/guestfs.pod:203 #, no-wrap msgid "" " char *data = guestfs_cat (g, \"/etc/passwd\");\n" @@ -443,7 +450,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:202 +#: ../src/guestfs.pod:205 msgid "" "This would return C as a newly allocated buffer containing the full " "content of that file (with some conditions: see also L below), " @@ -451,14 +458,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:206 +#: ../src/guestfs.pod:209 msgid "" "As another example, to create a top-level directory on that filesystem " "called C<\"var\"> you would do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:209 +#: ../src/guestfs.pod:212 #, no-wrap msgid "" " guestfs_mkdir (g, \"/var\");\n" @@ -466,12 +473,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:211 +#: ../src/guestfs.pod:214 msgid "To create a symlink you could do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:213 +#: ../src/guestfs.pod:216 #, no-wrap msgid "" " guestfs_ln_s (g, \"/etc/init.d/portmap\",\n" @@ -480,14 +487,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:216 +#: ../src/guestfs.pod:219 msgid "" "Libguestfs will reject attempts to use relative paths and there is no " "concept of a current working directory." msgstr "" # type: textblock -#: ../src/guestfs.pod:219 +#: ../src/guestfs.pod:222 msgid "" "Libguestfs can return errors in many situations: for example if the " "filesystem isn't writable, or if a file or directory that you requested " @@ -497,33 +504,33 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:225 +#: ../src/guestfs.pod:228 msgid "" "File writes are affected by the per-handle umask, set by calling L and defaulting to 022. See L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:228 +#: ../src/guestfs.pod:231 msgid "PARTITIONING" msgstr "" # type: textblock -#: ../src/guestfs.pod:230 +#: ../src/guestfs.pod:233 msgid "" "Libguestfs contains API calls to read, create and modify partition tables on " "disk images." msgstr "" # type: textblock -#: ../src/guestfs.pod:233 +#: ../src/guestfs.pod:236 msgid "" "In the common case where you want to create a single partition covering the " "whole disk, you should use the L call:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:237 +#: ../src/guestfs.pod:240 #, no-wrap msgid "" " const char *parttype = \"mbr\";\n" @@ -534,18 +541,18 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:242 +#: ../src/guestfs.pod:245 msgid "" "Obviously this effectively wipes anything that was on that disk image before." msgstr "" # type: =head2 -#: ../src/guestfs.pod:245 +#: ../src/guestfs.pod:248 msgid "LVM2" msgstr "" # type: textblock -#: ../src/guestfs.pod:247 +#: ../src/guestfs.pod:250 msgid "" "Libguestfs provides access to a large part of the LVM2 API, such as L and L. It won't make much sense unless " @@ -554,19 +561,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:252 +#: ../src/guestfs.pod:255 msgid "" "This author strongly recommends reading the LVM HOWTO, online at L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:255 +#: ../src/guestfs.pod:258 msgid "DOWNLOADING" msgstr "" # type: textblock -#: ../src/guestfs.pod:257 +#: ../src/guestfs.pod:260 msgid "" "Use L to download small, text only files. This call is " "limited to files which are less than 2 MB and which cannot contain any ASCII " @@ -574,7 +581,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:262 +#: ../src/guestfs.pod:265 msgid "" "L can be used to read files which contain arbitrary 8 " "bit data, since it returns a (pointer, size) pair. However it is still " @@ -582,31 +589,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:266 +#: ../src/guestfs.pod:269 msgid "" "L can be used to download any file, with no limits on " "content or size (even files larger than 4 GB)." msgstr "" # type: textblock -#: ../src/guestfs.pod:269 +#: ../src/guestfs.pod:272 msgid "" "To download multiple files, see L and L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:272 +#: ../src/guestfs.pod:275 msgid "UPLOADING" msgstr "" # type: textblock -#: ../src/guestfs.pod:274 +#: ../src/guestfs.pod:277 msgid "" "It's often the case that you want to write a file or files to the disk image." msgstr "" # type: textblock -#: ../src/guestfs.pod:277 +#: ../src/guestfs.pod:280 msgid "" "To write a small file with fixed content, use L. To create " "a file of all zeroes, use L (sparse) or L. This call has no limits on " "file content or size (even files larger than 4 GB)." msgstr "" # type: textblock -#: ../src/guestfs.pod:286 +#: ../src/guestfs.pod:289 msgid "" "To upload multiple files, see L and L." msgstr "" # type: textblock -#: ../src/guestfs.pod:288 +#: ../src/guestfs.pod:291 msgid "" "However the fastest way to upload I is to " "turn them into a squashfs or CD ISO (see L and L to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:309 +#: ../src/guestfs.pod:312 msgid "" "Use L to copy a single file, or L to copy " "directories recursively." msgstr "" # type: =item -#: ../src/guestfs.pod:312 +#: ../src/guestfs.pod:315 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:314 +#: ../src/guestfs.pod:317 msgid "" "Use L which efficiently uses L to copy between files and " "devices in the guest." msgstr "" # type: textblock -#: ../src/guestfs.pod:317 +#: ../src/guestfs.pod:320 msgid "Example: duplicate the contents of an LV:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:319 +#: ../src/guestfs.pod:322 #, no-wrap msgid "" " guestfs_dd (g, \"/dev/VG/Original\", \"/dev/VG/Copy\");\n" @@ -693,7 +700,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:321 +#: ../src/guestfs.pod:324 msgid "" "The destination (C) must be at least as large as the source " "(C). To copy less than the whole source device, use L to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:327 +#: ../src/guestfs.pod:330 msgid "Use L. See L above." msgstr "" # type: =item -#: ../src/guestfs.pod:329 +#: ../src/guestfs.pod:332 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:331 +#: ../src/guestfs.pod:334 msgid "Use L. See L above." msgstr "" # type: =head2 -#: ../src/guestfs.pod:335 +#: ../src/guestfs.pod:338 msgid "LISTING FILES" msgstr "" # type: textblock -#: ../src/guestfs.pod:337 +#: ../src/guestfs.pod:340 msgid "" "L is just designed for humans to read (mainly when using the " "L-equivalent command C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:340 +#: ../src/guestfs.pod:343 msgid "" "L is a quick way to get a list of files in a directory from " "programs, as a flat list of strings." msgstr "" # type: textblock -#: ../src/guestfs.pod:343 +#: ../src/guestfs.pod:346 msgid "" "L is a programmatic way to get a list of files in a " "directory, plus additional information about each one. It is more " @@ -748,18 +755,18 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:347 +#: ../src/guestfs.pod:350 msgid "" "L and L can be used to recursively list files." msgstr "" # type: =head2 -#: ../src/guestfs.pod:350 +#: ../src/guestfs.pod:353 msgid "RUNNING COMMANDS" msgstr "" # type: textblock -#: ../src/guestfs.pod:352 +#: ../src/guestfs.pod:355 msgid "" "Although libguestfs is primarily an API for manipulating files inside guest " "images, we also provide some limited facilities for running commands inside " @@ -767,23 +774,23 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:356 +#: ../src/guestfs.pod:359 msgid "There are many limitations to this:" msgstr "" # type: =item -#: ../src/guestfs.pod:360 ../src/guestfs.pod:365 ../src/guestfs.pod:370 -#: ../src/guestfs.pod:374 ../src/guestfs.pod:379 ../src/guestfs.pod:383 -#: ../src/guestfs.pod:388 ../src/guestfs.pod:393 ../src/guestfs.pod:957 -#: ../src/guestfs.pod:961 ../src/guestfs.pod:965 ../src/guestfs.pod:970 -#: ../src/guestfs.pod:978 ../src/guestfs.pod:997 ../src/guestfs.pod:1005 -#: ../src/guestfs.pod:1027 ../src/guestfs.pod:1031 ../src/guestfs.pod:1035 -#: ../src/guestfs.pod:1039 ../src/guestfs.pod:1043 ../src/guestfs.pod:1047 -#: ../src/guestfs.pod:1529 ../src/guestfs.pod:1534 ../src/guestfs.pod:1538 -#: ../src/guestfs.pod:1648 ../src/guestfs.pod:1653 ../src/guestfs.pod:1657 -#: ../src/guestfs.pod:2001 ../src/guestfs.pod:2007 ../src/guestfs.pod:2012 -#: ../src/guestfs.pod:2018 ../src/guestfs.pod:2126 ../src/guestfs.pod:2130 -#: ../src/guestfs.pod:2134 ../src/guestfs.pod:2138 +#: ../src/guestfs.pod:363 ../src/guestfs.pod:368 ../src/guestfs.pod:373 +#: ../src/guestfs.pod:377 ../src/guestfs.pod:382 ../src/guestfs.pod:386 +#: ../src/guestfs.pod:391 ../src/guestfs.pod:396 ../src/guestfs.pod:955 +#: ../src/guestfs.pod:959 ../src/guestfs.pod:963 ../src/guestfs.pod:968 +#: ../src/guestfs.pod:976 ../src/guestfs.pod:995 ../src/guestfs.pod:1003 +#: ../src/guestfs.pod:1025 ../src/guestfs.pod:1029 ../src/guestfs.pod:1033 +#: ../src/guestfs.pod:1037 ../src/guestfs.pod:1041 ../src/guestfs.pod:1045 +#: ../src/guestfs.pod:1527 ../src/guestfs.pod:1532 ../src/guestfs.pod:1536 +#: ../src/guestfs.pod:1646 ../src/guestfs.pod:1651 ../src/guestfs.pod:1655 +#: ../src/guestfs.pod:1999 ../src/guestfs.pod:2005 ../src/guestfs.pod:2010 +#: ../src/guestfs.pod:2016 ../src/guestfs.pod:2128 ../src/guestfs.pod:2132 +#: ../src/guestfs.pod:2136 ../src/guestfs.pod:2140 #: ../src/guestfs-actions.pod:15 ../src/guestfs-actions.pod:22 #: ../src/guestfs-actions.pod:569 ../src/guestfs-actions.pod:577 #: ../src/guestfs-actions.pod:584 ../src/guestfs-actions.pod:591 @@ -815,51 +822,51 @@ msgid "*" msgstr "" # type: textblock -#: ../src/guestfs.pod:362 +#: ../src/guestfs.pod:365 msgid "" "The kernel version that the command runs under will be different from what " "it expects." msgstr "" # type: textblock -#: ../src/guestfs.pod:367 +#: ../src/guestfs.pod:370 msgid "" "If the command needs to communicate with daemons, then most likely they " "won't be running." msgstr "" # type: textblock -#: ../src/guestfs.pod:372 +#: ../src/guestfs.pod:375 msgid "The command will be running in limited memory." msgstr "" # type: textblock -#: ../src/guestfs.pod:376 +#: ../src/guestfs.pod:379 msgid "" "The network may not be available unless you enable it (see L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:381 +#: ../src/guestfs.pod:384 msgid "Only supports Linux guests (not Windows, BSD, etc)." msgstr "" # type: textblock -#: ../src/guestfs.pod:385 +#: ../src/guestfs.pod:388 msgid "" "Architecture limitations (eg. won't work for a PPC guest on an X86 host)." msgstr "" # type: textblock -#: ../src/guestfs.pod:390 +#: ../src/guestfs.pod:393 msgid "" "For SELinux guests, you may need to enable SELinux and load policy first. " "See L in this manpage." msgstr "" # type: textblock -#: ../src/guestfs.pod:395 +#: ../src/guestfs.pod:398 msgid "" "I It is not safe to run commands from untrusted, possibly " "malicious guests. These commands may attempt to exploit your program by " @@ -871,7 +878,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:404 +#: ../src/guestfs.pod:407 msgid "" "A secure alternative is to use libguestfs to install a \"firstboot\" script " "(a script which runs when the guest next boots normally), and to have this " @@ -881,26 +888,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:412 +#: ../src/guestfs.pod:415 msgid "" "The two main API calls to run commands are L and L (there are also variations)." msgstr "" # type: textblock -#: ../src/guestfs.pod:415 +#: ../src/guestfs.pod:418 msgid "" "The difference is that L runs commands using the shell, so any " "shell globs, redirections, etc will work." msgstr "" # type: =head2 -#: ../src/guestfs.pod:418 +#: ../src/guestfs.pod:421 msgid "CONFIGURATION FILES" msgstr "" # type: textblock -#: ../src/guestfs.pod:420 +#: ../src/guestfs.pod:423 msgid "" "To read and write configuration files in Linux guest filesystems, we " "strongly recommend using Augeas. For example, Augeas understands how to " @@ -909,7 +916,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:425 +#: ../src/guestfs.pod:428 msgid "" "The main Augeas calls are bound through the C APIs. We don't " "document Augeas itself here because there is excellent documentation on the " @@ -917,7 +924,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:429 +#: ../src/guestfs.pod:432 msgid "" "If you don't want to use Augeas (you fool!) then try calling L to get the file as a list of lines which you can iterate " @@ -925,29 +932,29 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:433 +#: ../src/guestfs.pod:436 msgid "SELINUX" msgstr "" # type: textblock -#: ../src/guestfs.pod:435 +#: ../src/guestfs.pod:438 msgid "" "We support SELinux guests. To ensure that labeling happens correctly in " "SELinux guests, you need to enable SELinux and load the guest's policy:" msgstr "" # type: =item -#: ../src/guestfs.pod:441 ../src/guestfs.pod:1150 ../src/guestfs.pod:1281 +#: ../src/guestfs.pod:444 ../src/guestfs.pod:1148 ../src/guestfs.pod:1279 msgid "1." msgstr "" # type: textblock -#: ../src/guestfs.pod:443 +#: ../src/guestfs.pod:446 msgid "Before launching, do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:445 +#: ../src/guestfs.pod:448 #, no-wrap msgid "" " guestfs_set_selinux (g, 1);\n" @@ -955,19 +962,19 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:447 ../src/guestfs.pod:1154 ../src/guestfs.pod:1285 +#: ../src/guestfs.pod:450 ../src/guestfs.pod:1152 ../src/guestfs.pod:1283 msgid "2." msgstr "" # type: textblock -#: ../src/guestfs.pod:449 +#: ../src/guestfs.pod:452 msgid "" "After mounting the guest's filesystem(s), load the policy. This is best " "done by running the L command in the guest itself:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:453 +#: ../src/guestfs.pod:456 #, no-wrap msgid "" " guestfs_sh (g, \"/usr/sbin/load_policy\");\n" @@ -975,26 +982,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:455 +#: ../src/guestfs.pod:458 msgid "" "(Older versions of C require you to specify the name of the " "policy file)." msgstr "" # type: =item -#: ../src/guestfs.pod:458 ../src/guestfs.pod:1291 +#: ../src/guestfs.pod:461 ../src/guestfs.pod:1289 msgid "3." msgstr "" # type: textblock -#: ../src/guestfs.pod:460 +#: ../src/guestfs.pod:463 msgid "" "Optionally, set the security context for the API. The correct security " "context to use can only be known by inspecting the guest. As an example:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:464 +#: ../src/guestfs.pod:467 #, no-wrap msgid "" " guestfs_setcon (g, \"unconfined_u:unconfined_r:unconfined_t:s0\");\n" @@ -1002,24 +1009,24 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:468 +#: ../src/guestfs.pod:471 msgid "This will work for running commands and editing existing files." msgstr "" # type: textblock -#: ../src/guestfs.pod:470 +#: ../src/guestfs.pod:473 msgid "" "When new files are created, you may need to label them explicitly, for " "example by running the external command C." msgstr "" # type: =head2 -#: ../src/guestfs.pod:474 +#: ../src/guestfs.pod:477 msgid "UMASK" msgstr "" # type: textblock -#: ../src/guestfs.pod:476 +#: ../src/guestfs.pod:479 msgid "" "Certain calls are affected by the current file mode creation mask (the " "\"umask\"). In particular ones which create files or directories, such as " @@ -1029,14 +1036,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:482 +#: ../src/guestfs.pod:485 msgid "" "The default umask is C<022>, so files are created with modes such as C<0644> " "and directories with C<0755>." msgstr "" # type: textblock -#: ../src/guestfs.pod:485 +#: ../src/guestfs.pod:488 msgid "" "There are two ways to avoid being affected by umask. Either set umask to 0 " "(call C early after launching). Or call L." msgstr "" # type: =head1 -#: ../src/guestfs.pod:491 ../fish/guestfish.pod:670 +#: ../src/guestfs.pod:494 ../fish/guestfish.pod:670 msgid "ENCRYPTED DISKS" msgstr "" # type: textblock -#: ../src/guestfs.pod:493 +#: ../src/guestfs.pod:496 msgid "" "Libguestfs allows you to access Linux guests which have been encrypted using " "whole disk encryption that conforms to the Linux Unified Key Setup (LUKS) " @@ -1063,21 +1070,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:499 +#: ../src/guestfs.pod:502 msgid "" "Use L to identify LUKS-encrypted block devices (it " "returns the string C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:502 +#: ../src/guestfs.pod:505 msgid "" "Then open these devices by calling L. Obviously you " "will require the passphrase!" msgstr "" # type: textblock -#: ../src/guestfs.pod:505 +#: ../src/guestfs.pod:508 msgid "" "Opening a LUKS device creates a new device mapper device called C (where C is the string you supply to L followed by L. The logical volume" @@ -1094,7 +1101,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:515 +#: ../src/guestfs.pod:518 msgid "" "Use the reverse process to close a LUKS device. Unmount any logical volumes " "on it, deactivate the volume groups by caling C in the usual way." msgstr "" # type: textblock -#: ../src/guestfs.pod:533 +#: ../src/guestfs.pod:536 msgid "" "Then call L. This function uses other libguestfs calls " "and certain heuristics, and returns a list of operating systems that were " @@ -1139,7 +1146,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:542 +#: ../src/guestfs.pod:545 msgid "" "For each root, you can then call various C functions " "to get additional details about that operating system. For example, call L /dev/sda1\n" @@ -1169,21 +1176,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:559 +#: ../src/guestfs.pod:562 msgid "" "The caller can then make calls to L to mount the " "filesystems as suggested." msgstr "" # type: textblock -#: ../src/guestfs.pod:562 +#: ../src/guestfs.pod:565 msgid "" "Be careful to mount filesystems in the right order (eg. C before C). Sorting the keys of the hash by length, shortest first, should work." msgstr "" # type: textblock -#: ../src/guestfs.pod:566 +#: ../src/guestfs.pod:569 msgid "" "Inspection currently only works for some common operating systems. " "Contributors are welcome to send patches for other operating systems that we " @@ -1191,7 +1198,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:570 +#: ../src/guestfs.pod:573 msgid "" "Encrypted disks must be opened before inspection. See L " "for more details. The L function just ignores any " @@ -1199,7 +1206,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:574 +#: ../src/guestfs.pod:577 msgid "" "A note on the implementation: The call L performs " "inspection and caches the results in the guest handle. Subsequent calls to " @@ -1212,19 +1219,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:583 +#: ../src/guestfs.pod:586 msgid "SPECIAL CONSIDERATIONS FOR WINDOWS GUESTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:585 +#: ../src/guestfs.pod:588 msgid "" "Libguestfs can mount NTFS partitions. It does this using the L driver." msgstr "" # type: textblock -#: ../src/guestfs.pod:588 +#: ../src/guestfs.pod:591 msgid "" "DOS and Windows still use drive letters, and the filesystems are always " "treated as case insensitive by Windows itself, and therefore you might find " @@ -1234,7 +1241,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:594 +#: ../src/guestfs.pod:597 msgid "" "Drive letter mappings are outside the scope of libguestfs. You have to use " "libguestfs to read the appropriate Windows Registry and configuration files, " @@ -1243,21 +1250,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:599 +#: ../src/guestfs.pod:602 msgid "" "Replacing backslash characters with forward slash characters is also outside " "the scope of libguestfs, but something that you can easily do." msgstr "" # type: textblock -#: ../src/guestfs.pod:602 +#: ../src/guestfs.pod:605 msgid "" "Where we can help is in resolving the case insensitivity of paths. For " "this, call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:605 +#: ../src/guestfs.pod:608 msgid "" "Libguestfs also provides some help for decoding Windows Registry \"hive\" " "files, through the library C which is part of the libguestfs project " @@ -1268,19 +1275,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:613 +#: ../src/guestfs.pod:616 msgid "USING LIBGUESTFS WITH OTHER PROGRAMMING LANGUAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:615 +#: ../src/guestfs.pod:618 msgid "" "Although we don't want to discourage you from using the C API, we will " "mention here that the same API is also available in other languages." msgstr "" # type: textblock -#: ../src/guestfs.pod:618 +#: ../src/guestfs.pod:621 msgid "" "The API is broadly identical in all supported languages. This means that " "the C call C is C<$g-Emount($path)> in Perl, C" msgstr "" # type: textblock -#: ../src/guestfs.pod:635 +#: ../src/guestfs.pod:638 msgid "" "You can use the I header file from C++ programs. The C++ API is " "identical to the C API. C++ classes and exceptions are not used." msgstr "" # type: =item -#: ../src/guestfs.pod:639 +#: ../src/guestfs.pod:642 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:641 +#: ../src/guestfs.pod:644 msgid "" "The C# bindings are highly experimental. Please read the warnings at the " "top of C." msgstr "" # type: =item -#: ../src/guestfs.pod:644 +#: ../src/guestfs.pod:647 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:646 +#: ../src/guestfs.pod:649 msgid "" "This is the only language binding that is working but incomplete. Only " "calls which return simple integers have been bound in Haskell, and we are " @@ -1341,103 +1348,91 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:650 +#: ../src/guestfs.pod:653 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:652 +#: ../src/guestfs.pod:655 msgid "" "Full documentation is contained in the Javadoc which is distributed with " "libguestfs." msgstr "" # type: =item -#: ../src/guestfs.pod:655 +#: ../src/guestfs.pod:658 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:657 -msgid "For documentation see the file C." +#: ../src/guestfs.pod:660 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:659 +#: ../src/guestfs.pod:662 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:661 +#: ../src/guestfs.pod:664 msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:663 +#: ../src/guestfs.pod:666 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:665 +#: ../src/guestfs.pod:668 msgid "" "For documentation see C supplied with libguestfs sources or in " "the php-libguestfs package for your distribution." msgstr "" # type: textblock -#: ../src/guestfs.pod:668 +#: ../src/guestfs.pod:671 msgid "The PHP binding only works correctly on 64 bit machines." msgstr "" # type: =item -#: ../src/guestfs.pod:670 +#: ../src/guestfs.pod:673 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:672 -msgid "For documentation do:" -msgstr "" - -# type: verbatim -#: ../src/guestfs.pod:674 -#, no-wrap -msgid "" -" $ python\n" -" >>> import guestfs\n" -" >>> help (guestfs)\n" -"\n" +#: ../src/guestfs.pod:675 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:678 +#: ../src/guestfs.pod:677 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:680 -msgid "" -"Use the Guestfs module. There is no Ruby-specific documentation, but you " -"can find examples written in Ruby in the libguestfs source." +#: ../src/guestfs.pod:679 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:683 +#: ../src/guestfs.pod:681 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:685 +#: ../src/guestfs.pod:683 msgid "For documentation see L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:689 +#: ../src/guestfs.pod:687 msgid "LIBGUESTFS GOTCHAS" msgstr "" # type: textblock -#: ../src/guestfs.pod:691 +#: ../src/guestfs.pod:689 msgid "" "L: \"A feature of a " "system [...] that works in the way it is documented but is counterintuitive " @@ -1445,7 +1440,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:695 +#: ../src/guestfs.pod:693 msgid "" "Since we developed libguestfs and the associated tools, there are several " "things we would have designed differently, but are now stuck with for " @@ -1454,12 +1449,12 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:703 +#: ../src/guestfs.pod:701 msgid "Autosync / forgetting to sync." msgstr "" # type: textblock -#: ../src/guestfs.pod:705 +#: ../src/guestfs.pod:703 msgid "" "When modifying a filesystem from C or another language, you B unmount " "all filesystems and call L explicitly before you close the " @@ -1467,7 +1462,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:709 +#: ../src/guestfs.pod:707 #, no-wrap msgid "" " guestfs_set_autosync (g, 1);\n" @@ -1475,14 +1470,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:711 +#: ../src/guestfs.pod:709 msgid "" "to have the unmount/sync done automatically for you when the handle 'g' is " "closed. (This feature is called \"autosync\", L q.v.)" msgstr "" # type: textblock -#: ../src/guestfs.pod:715 +#: ../src/guestfs.pod:713 msgid "" "If you forget to do this, then it is entirely possible that your changes " "won't be written out, or will be partially written, or (very rarely) that " @@ -1490,7 +1485,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:719 +#: ../src/guestfs.pod:717 msgid "" "Note that in L autosync is the default. So quick and dirty " "guestfish scripts that forget to sync will work just fine, which can make " @@ -1498,19 +1493,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:723 +#: ../src/guestfs.pod:721 msgid "" "Update: Autosync is enabled by default for all API users starting from " "libguestfs 1.5.24." msgstr "" # type: =item -#: ../src/guestfs.pod:726 +#: ../src/guestfs.pod:724 msgid "Mount option C<-o sync> should not be the default." msgstr "" # type: textblock -#: ../src/guestfs.pod:728 +#: ../src/guestfs.pod:726 msgid "" "If you use L, then C<-o sync,noatime> are added implicitly. " "However C<-o sync> does not add any reliability benefit, but does have a " @@ -1518,31 +1513,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:732 +#: ../src/guestfs.pod:730 msgid "" "The work around is to use L and set the mount " "options that you actually want to use." msgstr "" # type: =item -#: ../src/guestfs.pod:735 +#: ../src/guestfs.pod:733 msgid "Read-only should be the default." msgstr "" # type: textblock -#: ../src/guestfs.pod:737 +#: ../src/guestfs.pod:735 msgid "" "In L, I<--ro> should be the default, and you should have to " "specify I<--rw> if you want to make changes to the image." msgstr "" # type: textblock -#: ../src/guestfs.pod:740 +#: ../src/guestfs.pod:738 msgid "This would reduce the potential to corrupt live VM images." msgstr "" # type: textblock -#: ../src/guestfs.pod:742 +#: ../src/guestfs.pod:740 msgid "" "Note that many filesystems change the disk when you just mount and unmount, " "even if you didn't perform any writes. You need to use L doesn't do what people expect (open C for " "examination). It tries to run a guestfish command C which doesn't " @@ -1565,12 +1560,12 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:755 +#: ../src/guestfs.pod:753 msgid "guestfish megabyte modifiers don't work right on all commands" msgstr "" # type: textblock -#: ../src/guestfs.pod:757 +#: ../src/guestfs.pod:755 msgid "" "In recent guestfish you can use C<1M> to mean 1 megabyte (and similarly for " "other modifiers). What guestfish actually does is to multiply the number " @@ -1580,12 +1575,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:764 +#: ../src/guestfs.pod:762 msgid "The most common is L. The guestfish command:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:766 +#: ../src/guestfs.pod:764 #, no-wrap msgid "" " lvcreate LV VG 100M\n" @@ -1593,7 +1588,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:768 +#: ../src/guestfs.pod:766 msgid "" "does not do what you might expect. Instead because L is " "already expecting megabytes, this tries to create a 100 I (100 " @@ -1602,19 +1597,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:773 +#: ../src/guestfs.pod:771 msgid "" "This could be fixed in the generator by specially marking parameters and " "return values which take bytes or other units." msgstr "" # type: =item -#: ../src/guestfs.pod:776 +#: ../src/guestfs.pod:774 msgid "Ambiguity between devices and paths" msgstr "" # type: textblock -#: ../src/guestfs.pod:778 +#: ../src/guestfs.pod:776 msgid "" "There is a subtle ambiguity in the API between a device name (eg. C) and a similar pathname. A file might just happen to be called " @@ -1622,7 +1617,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:783 +#: ../src/guestfs.pod:781 msgid "" "In the current API we usually resolve this ambiguity by having two separate " "calls, for example L and L. " @@ -1631,7 +1626,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:789 +#: ../src/guestfs.pod:787 msgid "" "To avoid both the ambiguity and the need to duplicate some calls, we could " "make paths/devices into structured names. One way to do this would be to " @@ -1641,7 +1636,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:795 +#: ../src/guestfs.pod:793 #, no-wrap msgid "" " type path = Path of string | Device of int | Partition of int * int\n" @@ -1649,12 +1644,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:797 +#: ../src/guestfs.pod:795 msgid "which would allow you to pass arguments like:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:799 +#: ../src/guestfs.pod:797 #, no-wrap msgid "" " Path \"/foo/bar\"\n" @@ -1665,19 +1660,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:804 +#: ../src/guestfs.pod:802 msgid "" "As you can see there are still problems to resolve even with this " "representation. Also consider how it might work in guestfish." msgstr "" # type: =head2 -#: ../src/guestfs.pod:809 +#: ../src/guestfs.pod:807 msgid "PROTOCOL LIMITS" msgstr "" # type: textblock -#: ../src/guestfs.pod:811 +#: ../src/guestfs.pod:809 msgid "" "Internally libguestfs uses a message-based protocol to pass API calls and " "their responses to and from a small \"appliance\" (see L for " @@ -1688,7 +1683,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:819 +#: ../src/guestfs.pod:817 msgid "" "A simple call such as L returns its result (the file data) in " "a simple string. Because this string is at some point internally encoded as " @@ -1697,7 +1692,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:825 +#: ../src/guestfs.pod:823 msgid "" "In order to transfer large files into and out of the guest filesystem, you " "need to use particular calls that support this. The sections L " @@ -1705,26 +1700,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:829 +#: ../src/guestfs.pod:827 msgid "" "You might also consider mounting the disk image using our FUSE filesystem " "support (L)." msgstr "" # type: =head2 -#: ../src/guestfs.pod:832 +#: ../src/guestfs.pod:830 msgid "KEYS AND PASSPHRASES" msgstr "" # type: textblock -#: ../src/guestfs.pod:834 +#: ../src/guestfs.pod:832 msgid "" "Certain libguestfs calls take a parameter that contains sensitive key " "material, passed in as a C string." msgstr "" # type: textblock -#: ../src/guestfs.pod:837 +#: ../src/guestfs.pod:835 msgid "" "In the future we would hope to change the libguestfs implementation so that " "keys are L-ed into physical RAM, and thus can never end up in " @@ -1733,7 +1728,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:842 +#: ../src/guestfs.pod:840 msgid "" "Therefore you should be aware that any key parameter you pass to libguestfs " "might end up being written out to the swap partition. If this is a concern, " @@ -1741,19 +1736,19 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:847 +#: ../src/guestfs.pod:845 msgid "MULTIPLE HANDLES AND MULTIPLE THREADS" msgstr "" # type: textblock -#: ../src/guestfs.pod:849 +#: ../src/guestfs.pod:847 msgid "" "All high-level libguestfs actions are synchronous. If you want to use " "libguestfs asynchronously then you must create a thread." msgstr "" # type: textblock -#: ../src/guestfs.pod:852 +#: ../src/guestfs.pod:850 msgid "" "Only use the handle from a single thread. Either use the handle exclusively " "from one thread, or provide your own mutex so that two threads cannot issue " @@ -1761,33 +1756,33 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:856 +#: ../src/guestfs.pod:854 msgid "" "See the graphical program guestfs-browser for one possible architecture for " "multithreaded programs using libvirt and libguestfs." msgstr "" # type: =head1 -#: ../src/guestfs.pod:859 +#: ../src/guestfs.pod:857 msgid "PATH" msgstr "" # type: textblock -#: ../src/guestfs.pod:861 +#: ../src/guestfs.pod:859 msgid "" "Libguestfs needs a kernel and initrd.img, which it finds by looking along an " "internal path." msgstr "" # type: textblock -#: ../src/guestfs.pod:864 +#: ../src/guestfs.pod:862 msgid "" "By default it looks for these in the directory C<$libdir/guestfs> (eg. C or C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:867 +#: ../src/guestfs.pod:865 msgid "" "Use L or set the environment variable L " "to change the directories that libguestfs will search in. The value is a " @@ -1798,12 +1793,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:874 +#: ../src/guestfs.pod:872 msgid "QEMU WRAPPERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:876 +#: ../src/guestfs.pod:874 msgid "" "If you want to compile your own qemu, run qemu from a non-standard location, " "or pass extra arguments to qemu, then you can write a shell-script wrapper " @@ -1811,7 +1806,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:880 +#: ../src/guestfs.pod:878 msgid "" "There is one important rule to remember: you I> as the " "last command in the shell script (so that qemu replaces the shell and " @@ -1820,14 +1815,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:885 +#: ../src/guestfs.pod:883 msgid "" "Here is an example of a wrapper, where I have built my own copy of qemu from " "source:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:888 +#: ../src/guestfs.pod:886 #, no-wrap msgid "" " #!/bin/sh -\n" @@ -1837,7 +1832,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:892 +#: ../src/guestfs.pod:890 msgid "" "Save this script as C (or wherever), C, and " "then use it by setting the LIBGUESTFS_QEMU environment variable. For " @@ -1845,7 +1840,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:896 +#: ../src/guestfs.pod:894 #, no-wrap msgid "" " LIBGUESTFS_QEMU=/tmp/qemu.wrapper guestfish\n" @@ -1853,19 +1848,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:898 +#: ../src/guestfs.pod:896 msgid "" "Note that libguestfs also calls qemu with the -help and -version options in " "order to determine features." msgstr "" # type: =head2 -#: ../src/guestfs.pod:901 +#: ../src/guestfs.pod:899 msgid "ABI GUARANTEE" msgstr "" # type: textblock -#: ../src/guestfs.pod:903 +#: ../src/guestfs.pod:901 msgid "" "We guarantee the libguestfs ABI (binary interface), for public, high-level " "actions as outlined in this section. Although we will deprecate some " @@ -1875,12 +1870,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:909 +#: ../src/guestfs.pod:907 msgid "BLOCK DEVICE NAMING" msgstr "" # type: textblock -#: ../src/guestfs.pod:911 +#: ../src/guestfs.pod:909 msgid "" "In the kernel there is now quite a profusion of schemata for naming block " "devices (in this context, by I I mean a physical or virtual " @@ -1894,7 +1889,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:923 +#: ../src/guestfs.pod:921 msgid "" "As discussed above, libguestfs uses a qemu appliance running an embedded " "Linux kernel to access block devices. We can run a variety of appliances " @@ -1902,7 +1897,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:927 +#: ../src/guestfs.pod:925 msgid "" "This causes a problem for libguestfs because many API calls use device or " "partition names. Working scripts and the recipe (example) scripts that we " @@ -1910,7 +1905,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:932 +#: ../src/guestfs.pod:930 msgid "" "Therefore libguestfs defines C as the I. " "Internally C names are translated, if necessary, to other names as " @@ -1919,7 +1914,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:938 +#: ../src/guestfs.pod:936 msgid "" "Note that this I applies to parameters. The L, " "L and similar calls return the true names of the " @@ -1927,12 +1922,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:943 +#: ../src/guestfs.pod:941 msgid "ALGORITHM FOR BLOCK DEVICE NAME TRANSLATION" msgstr "" # type: textblock -#: ../src/guestfs.pod:945 +#: ../src/guestfs.pod:943 msgid "" "Usually this translation is transparent. However in some (very rare) cases " "you may need to know the exact algorithm. Such cases include where you use " @@ -1941,7 +1936,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:951 +#: ../src/guestfs.pod:949 msgid "" "The algorithm is applied only to I which are known to be either " "device or partition names. Return values from functions such as L?" msgstr "" # type: textblock -#: ../src/guestfs.pod:967 +#: ../src/guestfs.pod:965 msgid "" "Does the named device exist? If so, we use that device. However if I " "then we continue with this algorithm." msgstr "" # type: textblock -#: ../src/guestfs.pod:972 +#: ../src/guestfs.pod:970 msgid "Replace initial C string with C." msgstr "" # type: textblock -#: ../src/guestfs.pod:974 +#: ../src/guestfs.pod:972 msgid "For example, change C to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:976 +#: ../src/guestfs.pod:974 msgid "If that named device exists, use it. If not, continue." msgstr "" # type: textblock -#: ../src/guestfs.pod:980 +#: ../src/guestfs.pod:978 msgid "Replace initial C string with C." msgstr "" # type: textblock -#: ../src/guestfs.pod:982 +#: ../src/guestfs.pod:980 msgid "If that named device exists, use it. If not, return an error." msgstr "" # type: =head3 -#: ../src/guestfs.pod:986 +#: ../src/guestfs.pod:984 msgid "PORTABILITY CONCERNS WITH BLOCK DEVICE NAMING" msgstr "" # type: textblock -#: ../src/guestfs.pod:988 +#: ../src/guestfs.pod:986 msgid "" "Although the standard naming scheme and automatic translation is useful for " "simple programs and guestfish scripts, for larger programs it is best not to " @@ -2004,51 +1999,51 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:992 +#: ../src/guestfs.pod:990 msgid "" "Where possible for maximum future portability programs using libguestfs " "should use these future-proof techniques:" msgstr "" # type: textblock -#: ../src/guestfs.pod:999 +#: ../src/guestfs.pod:997 msgid "" "Use L or L to list actual " "device names, and then use those names directly." msgstr "" # type: textblock -#: ../src/guestfs.pod:1002 +#: ../src/guestfs.pod:1000 msgid "" "Since those device names exist by definition, they will never be translated." msgstr "" # type: textblock -#: ../src/guestfs.pod:1007 +#: ../src/guestfs.pod:1005 msgid "" "Use higher level ways to identify filesystems, such as LVM names, UUIDs and " "filesystem labels." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1012 +#: ../src/guestfs.pod:1010 msgid "SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1014 +#: ../src/guestfs.pod:1012 msgid "" "This section discusses security implications of using libguestfs, " "particularly with untrusted or malicious guests or disk images." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1017 +#: ../src/guestfs.pod:1015 msgid "GENERAL SECURITY CONSIDERATIONS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1019 +#: ../src/guestfs.pod:1017 msgid "" "Be careful with any files or data that you download from a guest (by " "\"download\" we mean not just the L command but any " @@ -2058,42 +2053,42 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1029 +#: ../src/guestfs.pod:1027 msgid "the data (file etc) not being present" msgstr "" # type: textblock -#: ../src/guestfs.pod:1033 +#: ../src/guestfs.pod:1031 msgid "being present but empty" msgstr "" # type: textblock -#: ../src/guestfs.pod:1037 +#: ../src/guestfs.pod:1035 msgid "being much larger than normal" msgstr "" # type: textblock -#: ../src/guestfs.pod:1041 +#: ../src/guestfs.pod:1039 msgid "containing arbitrary 8 bit data" msgstr "" # type: textblock -#: ../src/guestfs.pod:1045 +#: ../src/guestfs.pod:1043 msgid "being in an unexpected character encoding" msgstr "" # type: textblock -#: ../src/guestfs.pod:1049 +#: ../src/guestfs.pod:1047 msgid "containing homoglyphs." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1053 +#: ../src/guestfs.pod:1051 msgid "SECURITY OF MOUNTING FILESYSTEMS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1055 +#: ../src/guestfs.pod:1053 msgid "" "When you mount a filesystem under Linux, mistakes in the kernel filesystem " "(VFS) module can sometimes be escalated into exploits by deliberately " @@ -2109,7 +2104,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1068 +#: ../src/guestfs.pod:1066 msgid "" "That explains why you should never mount a filesystem from an untrusted " "guest on your host kernel. How about libguestfs? We run a Linux kernel " @@ -2123,19 +2118,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1079 +#: ../src/guestfs.pod:1077 msgid "" "In any case callers can reduce the attack surface by forcing the filesystem " "type when mounting (use L)." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1082 +#: ../src/guestfs.pod:1080 msgid "PROTOCOL SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1084 +#: ../src/guestfs.pod:1082 msgid "" "The protocol is designed to be secure, being based on RFC 4506 (XDR) with a " "defined upper message size. However a program that uses libguestfs must " @@ -2145,12 +2140,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1090 +#: ../src/guestfs.pod:1088 msgid "INSPECTION SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1092 +#: ../src/guestfs.pod:1090 msgid "" "Parts of the inspection API (see L) return untrusted strings " "directly from the guest, and these could contain any 8 bit data. Callers " @@ -2159,7 +2154,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1098 +#: ../src/guestfs.pod:1096 msgid "" "Guest configuration may be altered in unusual ways by the administrator of " "the virtual machine, and may not reflect reality (particularly for untrusted " @@ -2170,7 +2165,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1106 +#: ../src/guestfs.pod:1104 msgid "" "The inspection API parses guest configuration using two external libraries: " "Augeas (Linux configuration) and hivex (Windows Registry). Both are " @@ -2180,12 +2175,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1112 +#: ../src/guestfs.pod:1110 msgid "RUNNING UNTRUSTED GUEST COMMANDS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1114 +#: ../src/guestfs.pod:1112 msgid "" "Be very cautious about running commands from the guest. By running a " "command in the guest, you are giving CPU time to a binary that you do not " @@ -2195,24 +2190,24 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1120 +#: ../src/guestfs.pod:1118 msgid "CVE-2010-3851" msgstr "" # type: textblock -#: ../src/guestfs.pod:1122 +#: ../src/guestfs.pod:1120 msgid "https://bugzilla.redhat.com/642934" msgstr "" # type: textblock -#: ../src/guestfs.pod:1124 +#: ../src/guestfs.pod:1122 msgid "" "This security bug concerns the automatic disk format detection that qemu " "does on disk images." msgstr "" # type: textblock -#: ../src/guestfs.pod:1127 +#: ../src/guestfs.pod:1125 msgid "" "A raw disk image is just the raw bytes, there is no header. Other disk " "images like qcow2 contain a special header. Qemu deals with this by looking " @@ -2221,7 +2216,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1132 +#: ../src/guestfs.pod:1130 msgid "" "This allows a guest which has been given a raw disk image to write some " "other header. At next boot (or when the disk image is accessed by " @@ -2230,7 +2225,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1137 +#: ../src/guestfs.pod:1135 msgid "" "This in itself would not be a problem, but qcow2 offers many features, one " "of which is to allow a disk image to refer to another image (called the " @@ -2242,25 +2237,25 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1145 +#: ../src/guestfs.pod:1143 msgid "" "In libguestfs this is rather hard to exploit except under two circumstances:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1152 +#: ../src/guestfs.pod:1150 msgid "You have enabled the network or have opened the disk in write mode." msgstr "" # type: textblock -#: ../src/guestfs.pod:1156 +#: ../src/guestfs.pod:1154 msgid "" "You are also running untrusted code from the guest (see L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1161 +#: ../src/guestfs.pod:1159 msgid "" "The way to avoid this is to specify the expected disk format when adding " "disks (the optional C option to L). You " @@ -2269,31 +2264,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1166 +#: ../src/guestfs.pod:1164 msgid "" "For disks added from libvirt using calls like L, the " "format is fetched from libvirt and passed through." msgstr "" # type: textblock -#: ../src/guestfs.pod:1169 +#: ../src/guestfs.pod:1167 msgid "" "For libguestfs tools, use the I<--format> command line parameter as " "appropriate." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1172 +#: ../src/guestfs.pod:1170 msgid "CONNECTION MANAGEMENT" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1174 +#: ../src/guestfs.pod:1172 msgid "guestfs_h *" msgstr "" # type: textblock -#: ../src/guestfs.pod:1176 +#: ../src/guestfs.pod:1174 msgid "" "C is the opaque type representing a connection handle. Create a " "handle by calling L. Call L to free the " @@ -2301,19 +2296,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1180 +#: ../src/guestfs.pod:1178 msgid "" "For information on using multiple handles and threads, see the section L below." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1183 +#: ../src/guestfs.pod:1181 msgid "guestfs_create" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1185 +#: ../src/guestfs.pod:1183 #, no-wrap msgid "" " guestfs_h *guestfs_create (void);\n" @@ -2321,43 +2316,43 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1187 +#: ../src/guestfs.pod:1185 msgid "Create a connection handle." msgstr "" # type: textblock -#: ../src/guestfs.pod:1189 +#: ../src/guestfs.pod:1187 msgid "" "You have to call L (or one of the equivalent calls) " "on the handle at least once." msgstr "" # type: textblock -#: ../src/guestfs.pod:1192 +#: ../src/guestfs.pod:1190 msgid "" "This function returns a non-NULL pointer to a handle on success or NULL on " "error." msgstr "" # type: textblock -#: ../src/guestfs.pod:1195 +#: ../src/guestfs.pod:1193 msgid "After configuring the handle, you have to call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1197 +#: ../src/guestfs.pod:1195 msgid "" "You may also want to configure error handling for the handle. See L section below." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1200 +#: ../src/guestfs.pod:1198 msgid "guestfs_close" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1202 +#: ../src/guestfs.pod:1200 #, no-wrap msgid "" " void guestfs_close (guestfs_h *g);\n" @@ -2365,24 +2360,24 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1204 +#: ../src/guestfs.pod:1202 msgid "This closes the connection handle and frees up all resources used." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1206 +#: ../src/guestfs.pod:1204 msgid "ERROR HANDLING" msgstr "" # type: textblock -#: ../src/guestfs.pod:1208 +#: ../src/guestfs.pod:1206 msgid "" "API functions can return errors. For example, almost all functions that " "return C will return C<-1> to indicate an error." msgstr "" # type: textblock -#: ../src/guestfs.pod:1211 +#: ../src/guestfs.pod:1209 msgid "" "Additional information is available for errors: an error message string and " "optionally an error number (errno) if the thing that failed was a system " @@ -2390,7 +2385,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1215 +#: ../src/guestfs.pod:1213 msgid "" "You can get at the additional information about the last error on the handle " "by calling L, L, and/or by setting " @@ -2398,7 +2393,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1220 +#: ../src/guestfs.pod:1218 msgid "" "When the handle is created, a default error handler is installed which " "prints the error message string to C. For small short-running " @@ -2406,7 +2401,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1224 +#: ../src/guestfs.pod:1222 #, no-wrap msgid "" " if (guestfs_launch (g) == -1)\n" @@ -2415,21 +2410,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1227 +#: ../src/guestfs.pod:1225 msgid "" "since the default error handler will ensure that an error message has been " "printed to C before the program exits." msgstr "" # type: textblock -#: ../src/guestfs.pod:1230 +#: ../src/guestfs.pod:1228 msgid "" "For other programs the caller will almost certainly want to install an " "alternate error handler or do error handling in-line like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1233 +#: ../src/guestfs.pod:1231 #, no-wrap msgid "" " g = guestfs_create ();\n" @@ -2437,7 +2432,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1235 +#: ../src/guestfs.pod:1233 #, no-wrap msgid "" " /* This disables the default behaviour of printing errors\n" @@ -2447,7 +2442,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1239 +#: ../src/guestfs.pod:1237 #, no-wrap msgid "" " if (guestfs_launch (g) == -1) {\n" @@ -2461,7 +2456,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1247 +#: ../src/guestfs.pod:1245 msgid "" "Out of memory errors are handled differently. The default action is to call " "L. If this is undesirable, then you can set a handler using L returns C if the handle cannot be created, and " "because there is no handle if this happens there is no way to get additional " @@ -2479,12 +2474,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1257 +#: ../src/guestfs.pod:1255 msgid "guestfs_last_error" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1259 +#: ../src/guestfs.pod:1257 #, no-wrap msgid "" " const char *guestfs_last_error (guestfs_h *g);\n" @@ -2492,26 +2487,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1261 +#: ../src/guestfs.pod:1259 msgid "" "This returns the last error message that happened on C. If there has not " "been an error since the handle was created, then this returns C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1265 +#: ../src/guestfs.pod:1263 msgid "" "The lifetime of the returned string is until the next error occurs, or L is called." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1268 +#: ../src/guestfs.pod:1266 msgid "guestfs_last_errno" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1270 +#: ../src/guestfs.pod:1268 #, no-wrap msgid "" " int guestfs_last_errno (guestfs_h *g);\n" @@ -2519,28 +2514,28 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1272 +#: ../src/guestfs.pod:1270 msgid "This returns the last error number (errno) that happened on C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1274 +#: ../src/guestfs.pod:1272 msgid "If successful, an errno integer not equal to zero is returned." msgstr "" # type: textblock -#: ../src/guestfs.pod:1276 +#: ../src/guestfs.pod:1274 msgid "" "If no error, this returns 0. This call can return 0 in three situations:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1283 +#: ../src/guestfs.pod:1281 msgid "There has not been any error on the handle." msgstr "" # type: textblock -#: ../src/guestfs.pod:1287 +#: ../src/guestfs.pod:1285 msgid "" "There has been an error but the errno was meaningless. This corresponds to " "the case where the error did not come from a failed system call, but for " @@ -2548,14 +2543,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1293 +#: ../src/guestfs.pod:1291 msgid "" "There was an error from a failed system call, but for some reason the errno " "was not captured and returned. This usually indicates a bug in libguestfs." msgstr "" # type: textblock -#: ../src/guestfs.pod:1299 +#: ../src/guestfs.pod:1297 msgid "" "Libguestfs tries to convert the errno from inside the applicance into a " "corresponding errno for the caller (not entirely trivial: the appliance " @@ -2566,12 +2561,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1307 +#: ../src/guestfs.pod:1305 msgid "guestfs_set_error_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1309 +#: ../src/guestfs.pod:1307 #, no-wrap msgid "" " typedef void (*guestfs_error_handler_cb) (guestfs_h *g,\n" @@ -2584,7 +2579,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1316 +#: ../src/guestfs.pod:1314 msgid "" "The callback C will be called if there is an error. The parameters " "passed to the callback are an opaque data pointer and the error message " @@ -2592,14 +2587,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1320 +#: ../src/guestfs.pod:1318 msgid "" "C is not passed to the callback. To get that the callback must call " "L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1323 +#: ../src/guestfs.pod:1321 msgid "" "Note that the message string C is freed as soon as the callback " "function returns, so if you want to stash it somewhere you must make your " @@ -2607,22 +2602,22 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1327 +#: ../src/guestfs.pod:1325 msgid "The default handler prints messages on C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1329 +#: ../src/guestfs.pod:1327 msgid "If you set C to C then I handler is called." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1331 +#: ../src/guestfs.pod:1329 msgid "guestfs_get_error_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1333 +#: ../src/guestfs.pod:1331 #, no-wrap msgid "" " guestfs_error_handler_cb guestfs_get_error_handler (guestfs_h *g,\n" @@ -2631,17 +2626,17 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1336 +#: ../src/guestfs.pod:1334 msgid "Returns the current error handler callback." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1338 +#: ../src/guestfs.pod:1336 msgid "guestfs_set_out_of_memory_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1340 +#: ../src/guestfs.pod:1338 #, no-wrap msgid "" " typedef void (*guestfs_abort_cb) (void);\n" @@ -2651,30 +2646,30 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1344 +#: ../src/guestfs.pod:1342 msgid "" "The callback C will be called if there is an out of memory situation. " "I." msgstr "" # type: textblock -#: ../src/guestfs.pod:1347 +#: ../src/guestfs.pod:1345 msgid "The default is to call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1349 +#: ../src/guestfs.pod:1347 msgid "" "You cannot set C to C. You can't ignore out of memory situations." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1352 +#: ../src/guestfs.pod:1350 msgid "guestfs_get_out_of_memory_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1354 +#: ../src/guestfs.pod:1352 #, no-wrap msgid "" " guestfs_abort_fn guestfs_get_out_of_memory_handler (guestfs_h *g);\n" @@ -2682,42 +2677,42 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1356 +#: ../src/guestfs.pod:1354 msgid "This returns the current out of memory handler." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1358 +#: ../src/guestfs.pod:1356 msgid "API CALLS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1360 ../fish/guestfish.pod:908 +#: ../src/guestfs.pod:1358 ../fish/guestfish.pod:908 msgid "@ACTIONS@" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1362 +#: ../src/guestfs.pod:1360 msgid "STRUCTURES" msgstr "" # type: textblock -#: ../src/guestfs.pod:1364 +#: ../src/guestfs.pod:1362 msgid "@STRUCTS@" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1366 +#: ../src/guestfs.pod:1364 msgid "AVAILABILITY" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1368 +#: ../src/guestfs.pod:1366 msgid "GROUPS OF FUNCTIONALITY IN THE APPLIANCE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1370 +#: ../src/guestfs.pod:1368 msgid "" "Using L you can test availability of the following " "groups of functions. This test queries the appliance to see if the " @@ -2725,17 +2720,17 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1375 +#: ../src/guestfs.pod:1373 msgid "@AVAILABILITY@" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1377 +#: ../src/guestfs.pod:1375 msgid "GUESTFISH supported COMMAND" msgstr "" # type: textblock -#: ../src/guestfs.pod:1379 +#: ../src/guestfs.pod:1377 msgid "" "In L there is a handy interactive command C which " "prints out the available groups and whether they are supported by this build " @@ -2743,19 +2738,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1384 +#: ../src/guestfs.pod:1382 msgid "SINGLE CALLS AT COMPILE TIME" msgstr "" # type: textblock -#: ../src/guestfs.pod:1386 +#: ../src/guestfs.pod:1384 msgid "" "Since version 1.5.8, Cguestfs.hE> defines symbols for each C API " "function, such as:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1389 +#: ../src/guestfs.pod:1387 #, no-wrap msgid "" " #define LIBGUESTFS_HAVE_DD 1\n" @@ -2763,12 +2758,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1391 +#: ../src/guestfs.pod:1389 msgid "if L is available." msgstr "" # type: textblock -#: ../src/guestfs.pod:1393 +#: ../src/guestfs.pod:1391 msgid "" "Before version 1.5.8, if you needed to test whether a single libguestfs " "function is available at compile time, we recommended using build tools such " @@ -2776,7 +2771,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1398 +#: ../src/guestfs.pod:1396 #, no-wrap msgid "" " AC_CHECK_LIB([guestfs],[guestfs_create])\n" @@ -2785,19 +2780,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1401 +#: ../src/guestfs.pod:1399 msgid "" "which would result in C being either defined or not defined " "in your program." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1404 +#: ../src/guestfs.pod:1402 msgid "SINGLE CALLS AT RUN TIME" msgstr "" # type: textblock -#: ../src/guestfs.pod:1406 +#: ../src/guestfs.pod:1404 msgid "" "Testing at compile time doesn't guarantee that a function really exists in " "the library. The reason is that you might be dynamically linked against a " @@ -2807,7 +2802,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1413 +#: ../src/guestfs.pod:1411 msgid "" "You can use L to test if a function is available at run time, as " "in this example program (note that you still need the compile time check as " @@ -2815,7 +2810,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1417 +#: ../src/guestfs.pod:1415 #, no-wrap msgid "" " #include \n" @@ -2827,7 +2822,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1423 +#: ../src/guestfs.pod:1421 #, no-wrap msgid "" " main ()\n" @@ -2839,7 +2834,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1429 +#: ../src/guestfs.pod:1427 #, no-wrap msgid "" " /* Test if the function guestfs_dd is really available. */\n" @@ -2854,7 +2849,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1438 +#: ../src/guestfs.pod:1436 #, no-wrap msgid "" " if (!has_function)\n" @@ -2873,7 +2868,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1451 +#: ../src/guestfs.pod:1449 msgid "" "You may think the above is an awful lot of hassle, and it is. There are " "other ways outside of the C linking system to ensure that this kind of " @@ -2881,7 +2876,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1456 +#: ../src/guestfs.pod:1454 #, no-wrap msgid "" " Requires: libguestfs >= 1.0.80\n" @@ -2889,12 +2884,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1458 +#: ../src/guestfs.pod:1456 msgid "CALLS WITH OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1460 +#: ../src/guestfs.pod:1458 msgid "" "A recent feature of the API is the introduction of calls which take optional " "arguments. In C these are declared 3 ways. The main way is as a call which " @@ -2902,7 +2897,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1465 +#: ../src/guestfs.pod:1463 #, no-wrap msgid "" " int guestfs_add_drive_opts (guestfs_h *g, const char *filename, ...);\n" @@ -2910,14 +2905,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1467 +#: ../src/guestfs.pod:1465 msgid "" "Call this with a list of optional arguments, terminated by C<-1>. So to " "call with no optional arguments specified:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1470 +#: ../src/guestfs.pod:1468 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename, -1);\n" @@ -2925,12 +2920,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1472 +#: ../src/guestfs.pod:1470 msgid "With a single optional argument:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1474 +#: ../src/guestfs.pod:1472 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -2940,12 +2935,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1478 +#: ../src/guestfs.pod:1476 msgid "With two:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1480 +#: ../src/guestfs.pod:1478 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -2956,19 +2951,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1485 +#: ../src/guestfs.pod:1483 msgid "" "and so forth. Don't forget the terminating C<-1> otherwise Bad Things will " "happen!" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1488 +#: ../src/guestfs.pod:1486 msgid "USING va_list FOR OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1490 +#: ../src/guestfs.pod:1488 msgid "" "The second variant has the same name with the suffix C<_va>, which works the " "same way but takes a C. See the C manual for details. For the " @@ -2976,7 +2971,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1494 +#: ../src/guestfs.pod:1492 #, no-wrap msgid "" " int guestfs_add_drive_opts_va (guestfs_h *g, const char *filename,\n" @@ -2985,12 +2980,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1497 +#: ../src/guestfs.pod:1495 msgid "CONSTRUCTING OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1499 +#: ../src/guestfs.pod:1497 msgid "" "The third variant is useful where you need to construct these calls. You " "pass in a structure where you fill in the optional fields. The structure " @@ -3000,7 +2995,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1505 +#: ../src/guestfs.pod:1503 #, no-wrap msgid "" " struct guestfs_add_drive_opts_argv {\n" @@ -3015,12 +3010,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1514 +#: ../src/guestfs.pod:1512 msgid "You could call it like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1516 +#: ../src/guestfs.pod:1514 #, no-wrap msgid "" " struct guestfs_add_drive_opts_argv optargs = {\n" @@ -3033,7 +3028,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1523 +#: ../src/guestfs.pod:1521 #, no-wrap msgid "" " guestfs_add_drive_opts_argv (g, filename, &optargs);\n" @@ -3041,36 +3036,36 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1525 ../src/guestfs-actions.pod:11 +#: ../src/guestfs.pod:1523 ../src/guestfs-actions.pod:11 #: ../src/guestfs-actions.pod:1842 ../fish/guestfish-actions.pod:9 #: ../fish/guestfish-actions.pod:1255 msgid "Notes:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1531 +#: ../src/guestfs.pod:1529 msgid "The C<_BITMASK> suffix on each option name when specifying the bitmask." msgstr "" # type: textblock -#: ../src/guestfs.pod:1536 +#: ../src/guestfs.pod:1534 msgid "You do not need to fill in all fields of the structure." msgstr "" # type: textblock -#: ../src/guestfs.pod:1540 +#: ../src/guestfs.pod:1538 msgid "" "There must be a one-to-one correspondence between fields of the structure " "that are filled in, and bits set in the bitmask." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1545 +#: ../src/guestfs.pod:1543 msgid "OPTIONAL ARGUMENTS IN OTHER LANGUAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:1547 +#: ../src/guestfs.pod:1545 msgid "" "In other languages, optional arguments are expressed in the way that is " "natural for that language. We refer you to the language-specific " @@ -3078,31 +3073,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1551 +#: ../src/guestfs.pod:1549 msgid "For guestfish, see L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1553 +#: ../src/guestfs.pod:1551 msgid "SETTING CALLBACKS TO HANDLE EVENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1555 +#: ../src/guestfs.pod:1553 msgid "" "The child process generates events in some situations. Current events " "include: receiving a log message, the child process exits." msgstr "" # type: textblock -#: ../src/guestfs.pod:1558 +#: ../src/guestfs.pod:1556 msgid "" "Use the C functions to set a callback for different " "types of events." msgstr "" # type: textblock -#: ../src/guestfs.pod:1561 +#: ../src/guestfs.pod:1559 msgid "" "Only I can be registered for each handle. " "Calling C again overwrites the previous callback of " @@ -3111,12 +3106,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1566 +#: ../src/guestfs.pod:1564 msgid "guestfs_set_log_message_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1568 +#: ../src/guestfs.pod:1566 #, no-wrap msgid "" " typedef void (*guestfs_log_message_cb) (guestfs_h *g, void *opaque,\n" @@ -3128,31 +3123,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1574 +#: ../src/guestfs.pod:1572 msgid "" "The callback function C will be called whenever qemu or the guest writes " "anything to the console." msgstr "" # type: textblock -#: ../src/guestfs.pod:1577 +#: ../src/guestfs.pod:1575 msgid "Use this function to capture kernel messages and similar." msgstr "" # type: textblock -#: ../src/guestfs.pod:1579 +#: ../src/guestfs.pod:1577 msgid "" "Normally there is no log message handler, and log messages are just " "discarded." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1582 +#: ../src/guestfs.pod:1580 msgid "guestfs_set_subprocess_quit_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1584 +#: ../src/guestfs.pod:1582 #, no-wrap msgid "" " typedef void (*guestfs_subprocess_quit_cb) (guestfs_h *g, void *opaque);\n" @@ -3163,7 +3158,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1589 +#: ../src/guestfs.pod:1587 msgid "" "The callback function C will be called when the child process quits, " "either asynchronously or if killed by L. (This " @@ -3171,12 +3166,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1594 +#: ../src/guestfs.pod:1592 msgid "guestfs_set_launch_done_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1596 +#: ../src/guestfs.pod:1594 #, no-wrap msgid "" " typedef void (*guestfs_launch_done_cb) (guestfs_h *g, void *opaque);\n" @@ -3187,7 +3182,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1601 +#: ../src/guestfs.pod:1599 msgid "" "The callback function C will be called when the child process becomes " "ready first time after it has been launched. (This corresponds to a " @@ -3195,12 +3190,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1605 +#: ../src/guestfs.pod:1603 msgid "guestfs_set_close_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1607 +#: ../src/guestfs.pod:1605 #, no-wrap msgid "" " typedef void (*guestfs_close_cb) (guestfs_h *g, void *opaque);\n" @@ -3211,14 +3206,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1612 +#: ../src/guestfs.pod:1610 msgid "" "The callback function C will be called while the handle is being closed " "(synchronously from L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1615 +#: ../src/guestfs.pod:1613 msgid "" "Note that libguestfs installs an L handler to try to clean up " "handles that are open when the program exits. This means that this callback " @@ -3229,12 +3224,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1623 +#: ../src/guestfs.pod:1621 msgid "guestfs_set_progress_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1625 +#: ../src/guestfs.pod:1623 #, no-wrap msgid "" " typedef void (*guestfs_progress_cb) (guestfs_h *g, void *opaque,\n" @@ -3247,7 +3242,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1632 +#: ../src/guestfs.pod:1630 msgid "" "Some long-running operations can generate progress messages. If this " "callback is registered, then it will be called each time a progress message " @@ -3257,7 +3252,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1638 +#: ../src/guestfs.pod:1636 msgid "" "The callback receives two numbers: C and C. The units of " "C are not defined, although for some operations C may relate " @@ -3266,31 +3261,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1644 +#: ../src/guestfs.pod:1642 msgid "The only defined and stable parts of the API are:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1650 +#: ../src/guestfs.pod:1648 msgid "" "The callback can display to the user some type of progress bar or indicator " "which shows the ratio of C:C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1655 +#: ../src/guestfs.pod:1653 msgid "0 E= C E= C" msgstr "" # type: textblock -#: ../src/guestfs.pod:1659 +#: ../src/guestfs.pod:1657 msgid "" "If any progress notification is sent during a call, then a final progress " "notification is always sent when C = C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1662 +#: ../src/guestfs.pod:1660 msgid "" "This is to simplify caller code, so callers can easily set the progress " "indicator to \"100%\" at the end of the operation, without requiring special " @@ -3298,7 +3293,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1668 +#: ../src/guestfs.pod:1666 msgid "" "The callback also receives the procedure number and serial number of the " "call. These are only useful for debugging protocol issues, and the callback " @@ -3307,12 +3302,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1673 +#: ../src/guestfs.pod:1671 msgid "PRIVATE DATA AREA" msgstr "" # type: textblock -#: ../src/guestfs.pod:1675 +#: ../src/guestfs.pod:1673 msgid "" "You can attach named pieces of private data to the libguestfs handle, and " "fetch them by name for the lifetime of the handle. This is called the " @@ -3320,12 +3315,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1679 +#: ../src/guestfs.pod:1677 msgid "To attach a named piece of data, use the following call:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1681 +#: ../src/guestfs.pod:1679 #, no-wrap msgid "" " void guestfs_set_private (guestfs_h *g, const char *key, void *data);\n" @@ -3333,7 +3328,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1683 +#: ../src/guestfs.pod:1681 msgid "" "C is the name to associate with this data, and C is an arbitrary " "pointer (which can be C). Any previous item with the same name is " @@ -3341,7 +3336,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1687 +#: ../src/guestfs.pod:1685 msgid "" "You can use any C you want, but names beginning with an underscore " "character are reserved for internal libguestfs purposes (for implementing " @@ -3350,12 +3345,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1692 +#: ../src/guestfs.pod:1690 msgid "To retrieve the pointer, use:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1694 +#: ../src/guestfs.pod:1692 #, no-wrap msgid "" " void *guestfs_get_private (guestfs_h *g, const char *key);\n" @@ -3363,7 +3358,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1696 +#: ../src/guestfs.pod:1694 msgid "" "This function returns C if either no data is found associated with " "C, or if the user previously set the C's C pointer to " @@ -3371,7 +3366,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1700 +#: ../src/guestfs.pod:1698 msgid "" "Libguestfs does not try to look at or interpret the C pointer in any " "way. As far as libguestfs is concerned, it need not be a valid pointer at " @@ -3383,31 +3378,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1708 +#: ../src/guestfs.pod:1706 msgid "" "The private data area is implemented using a hash table, and should be " "reasonably efficient for moderate numbers of keys." msgstr "" # type: =end -#: ../src/guestfs.pod:1711 ../src/guestfs.pod:1716 +#: ../src/guestfs.pod:1709 ../src/guestfs.pod:1714 msgid "html" msgstr "" # type: textblock -#: ../src/guestfs.pod:1713 +#: ../src/guestfs.pod:1711 msgid "" " " msgstr "" # type: =head1 -#: ../src/guestfs.pod:1718 +#: ../src/guestfs.pod:1716 msgid "ARCHITECTURE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1720 +#: ../src/guestfs.pod:1718 msgid "" "Internally, libguestfs is implemented by running an appliance (a special " "type of small virtual machine) using L. Qemu runs as a child " @@ -3415,7 +3410,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1724 +#: ../src/guestfs.pod:1722 #, no-wrap msgid "" " ___________________\n" @@ -3441,14 +3436,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1744 +#: ../src/guestfs.pod:1742 msgid "" "The library, linked to the main program, creates the child process and hence " "the appliance in the L function." msgstr "" # type: textblock -#: ../src/guestfs.pod:1747 +#: ../src/guestfs.pod:1745 msgid "" "Inside the appliance is a Linux kernel and a complete stack of userspace " "tools (such as LVM and ext2 programs) and a small controlling daemon called " @@ -3460,7 +3455,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1756 +#: ../src/guestfs.pod:1754 msgid "" "A common misunderstanding is that the appliance \"is\" the virtual machine. " "Although the disk image you are attached to might also be used by some " @@ -3471,17 +3466,17 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1763 +#: ../src/guestfs.pod:1761 msgid "STATE MACHINE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1765 +#: ../src/guestfs.pod:1763 msgid "libguestfs uses a state machine to model the child process:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1767 +#: ../src/guestfs.pod:1765 #, no-wrap msgid "" " |\n" @@ -3509,7 +3504,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1789 +#: ../src/guestfs.pod:1787 msgid "" "The normal transitions are (1) CONFIG (when the handle is created, but there " "is no child process), (2) LAUNCHING (when the child process is booting up), " @@ -3518,7 +3513,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1794 +#: ../src/guestfs.pod:1792 msgid "" "The guest may be killed by L, or may die " "asynchronously at any time (eg. due to some internal error), and that causes " @@ -3526,14 +3521,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1798 +#: ../src/guestfs.pod:1796 msgid "" "Configuration commands for qemu such as L can only be " "issued when in the CONFIG state." msgstr "" # type: textblock -#: ../src/guestfs.pod:1801 +#: ../src/guestfs.pod:1799 msgid "" "The API offers one call that goes from CONFIG through LAUNCHING to READY. " "L blocks until the child process is READY to accept " @@ -3542,7 +3537,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1807 +#: ../src/guestfs.pod:1805 msgid "" "API actions such as L can only be issued when in the READY " "state. These API calls block waiting for the command to be carried out (ie. " @@ -3552,7 +3547,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1813 +#: ../src/guestfs.pod:1811 msgid "" "Finally, the child process sends asynchronous messages back to the main " "program, such as kernel log messages. You can register a callback to " @@ -3560,24 +3555,24 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1817 +#: ../src/guestfs.pod:1815 msgid "INTERNALS" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1819 +#: ../src/guestfs.pod:1817 msgid "COMMUNICATION PROTOCOL" msgstr "" # type: textblock -#: ../src/guestfs.pod:1821 +#: ../src/guestfs.pod:1819 msgid "" "Don't rely on using this protocol directly. This section documents how it " "currently works, but it may change at any time." msgstr "" # type: textblock -#: ../src/guestfs.pod:1824 +#: ../src/guestfs.pod:1822 msgid "" "The protocol used to talk between the library and the daemon running inside " "the qemu virtual machine is a simple RPC mechanism built on top of XDR (RFC " @@ -3585,14 +3580,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1828 +#: ../src/guestfs.pod:1826 msgid "" "The detailed format of structures is in C (note: " "this file is automatically generated)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1831 +#: ../src/guestfs.pod:1829 msgid "" "There are two broad cases, ordinary functions that don't have any C " "and C parameters, which are handled with very simple request/reply " @@ -3602,17 +3597,17 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1838 +#: ../src/guestfs.pod:1836 msgid "ORDINARY FUNCTIONS (NO FILEIN/FILEOUT PARAMS)" msgstr "" # type: textblock -#: ../src/guestfs.pod:1840 +#: ../src/guestfs.pod:1838 msgid "For ordinary functions, the request message is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1842 +#: ../src/guestfs.pod:1840 #, no-wrap msgid "" " total length (header + arguments,\n" @@ -3623,7 +3618,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1847 +#: ../src/guestfs.pod:1845 msgid "" "The total length field allows the daemon to allocate a fixed size buffer " "into which it slurps the rest of the message. As a result, the total length " @@ -3632,26 +3627,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1853 +#: ../src/guestfs.pod:1851 msgid "" "Note also that many functions don't take any arguments, in which case the " "C_args> is completely omitted." msgstr "" # type: textblock -#: ../src/guestfs.pod:1856 +#: ../src/guestfs.pod:1854 msgid "" "The header contains the procedure number (C) which is how the " "receiver knows what type of args structure to expect, or none at all." msgstr "" # type: textblock -#: ../src/guestfs.pod:1860 +#: ../src/guestfs.pod:1858 msgid "The reply message for ordinary functions is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1862 +#: ../src/guestfs.pod:1860 #, no-wrap msgid "" " total length (header + ret,\n" @@ -3662,27 +3657,27 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1867 +#: ../src/guestfs.pod:1865 msgid "" "As above the C_ret> structure may be completely omitted for " "functions that return no formal return values." msgstr "" # type: textblock -#: ../src/guestfs.pod:1870 +#: ../src/guestfs.pod:1868 msgid "" "As above the total length of the reply is limited to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1873 +#: ../src/guestfs.pod:1871 msgid "" "In the case of an error, a flag is set in the header, and the reply message " "is slightly changed:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1876 +#: ../src/guestfs.pod:1874 #, no-wrap msgid "" " total length (header + error,\n" @@ -3693,19 +3688,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1881 +#: ../src/guestfs.pod:1879 msgid "" "The C structure contains the error message as a " "string." msgstr "" # type: =head3 -#: ../src/guestfs.pod:1884 +#: ../src/guestfs.pod:1882 msgid "FUNCTIONS THAT HAVE FILEIN PARAMETERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1886 +#: ../src/guestfs.pod:1884 msgid "" "A C parameter indicates that we transfer a file I the guest. " "The normal request message is sent (see above). However this is followed by " @@ -3713,7 +3708,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1890 +#: ../src/guestfs.pod:1888 #, no-wrap msgid "" " total length (header + arguments,\n" @@ -3727,12 +3722,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1898 +#: ../src/guestfs.pod:1896 msgid "The \"sequence of chunks\" is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1900 +#: ../src/guestfs.pod:1898 #, no-wrap msgid "" " length of chunk (not including length word itself)\n" @@ -3746,7 +3741,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1908 +#: ../src/guestfs.pod:1906 msgid "" "The final chunk has the C field set to zero. Additionally a flag " "is set in the final chunk to indicate either successful completion or early " @@ -3754,7 +3749,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1912 +#: ../src/guestfs.pod:1910 msgid "" "At time of writing there are no functions that have more than one FileIn " "parameter. However this is (theoretically) supported, by sending the " @@ -3763,7 +3758,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1917 +#: ../src/guestfs.pod:1915 msgid "" "Both the library (sender) I the daemon (receiver) may cancel the " "transfer. The library does this by sending a chunk with a special flag set " @@ -3772,7 +3767,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1923 +#: ../src/guestfs.pod:1921 msgid "" "The daemon may also cancel. It does this by writing a special word " "C to the socket. The library listens for this during " @@ -3784,7 +3779,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1932 +#: ../src/guestfs.pod:1930 msgid "" "This protocol allows the transfer of arbitrary sized files (no 32 bit " "limit), and also files where the size is not known in advance (eg. from " @@ -3794,19 +3789,19 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1938 +#: ../src/guestfs.pod:1936 msgid "FUNCTIONS THAT HAVE FILEOUT PARAMETERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1940 +#: ../src/guestfs.pod:1938 msgid "" "The protocol for FileOut parameters is exactly the same as for FileIn " "parameters, but with the roles of daemon and library reversed." msgstr "" # type: verbatim -#: ../src/guestfs.pod:1943 +#: ../src/guestfs.pod:1941 #, no-wrap msgid "" " total length (header + ret,\n" @@ -3820,12 +3815,12 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1951 +#: ../src/guestfs.pod:1949 msgid "INITIAL MESSAGE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1953 +#: ../src/guestfs.pod:1951 msgid "" "When the daemon launches it sends an initial word (C) " "which indicates that the guest and daemon is alive. This is what L) if there is a callback registered, or " @@ -3854,7 +3849,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1967 +#: ../src/guestfs.pod:1965 msgid "" "The daemon self-limits the frequency of progress messages it sends (see " "C). Not all calls generate progress " @@ -3862,12 +3857,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1971 +#: ../src/guestfs.pod:1969 msgid "LIBGUESTFS VERSION NUMBERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1973 +#: ../src/guestfs.pod:1971 msgid "" "Since April 2010, libguestfs has started to make separate development and " "stable releases, along with corresponding branches in our git repository. " @@ -3875,7 +3870,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1978 +#: ../src/guestfs.pod:1976 #, no-wrap msgid "" " even numbers for stable: 1.2.x, 1.4.x, ...\n" @@ -3892,12 +3887,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1989 +#: ../src/guestfs.pod:1987 msgid "Thus \"1.3.5\" is the 5th update to the development branch \"1.3\"." msgstr "" # type: textblock -#: ../src/guestfs.pod:1991 +#: ../src/guestfs.pod:1989 msgid "" "As time passes we cherry pick fixes from the development branch and backport " "those into the stable branch, the effect being that the stable branch should " @@ -3907,26 +3902,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1997 +#: ../src/guestfs.pod:1995 msgid "Our criteria for backporting changes are:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2003 +#: ../src/guestfs.pod:2001 msgid "" "Documentation changes which don't affect any code are backported unless the " "documentation refers to a future feature which is not in stable." msgstr "" # type: textblock -#: ../src/guestfs.pod:2009 +#: ../src/guestfs.pod:2007 msgid "" "Bug fixes which are not controversial, fix obvious problems, and have been " "well tested are backported." msgstr "" # type: textblock -#: ../src/guestfs.pod:2014 +#: ../src/guestfs.pod:2012 msgid "" "Simple rearrangements of code which shouldn't affect how it works get " "backported. This is so that the code in the two branches doesn't get too " @@ -3934,7 +3929,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2020 +#: ../src/guestfs.pod:2018 msgid "" "We I backport new features, new APIs, new tools etc, except in one " "exceptional case: the new feature is required in order to implement an " @@ -3942,7 +3937,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2026 +#: ../src/guestfs.pod:2024 msgid "" "A new stable branch starts when we think the new features in development are " "substantial and compelling enough over the current stable branch to warrant " @@ -3953,47 +3948,47 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2034 ../fish/guestfish.pod:915 +#: ../src/guestfs.pod:2032 ../fish/guestfish.pod:915 #: ../test-tool/libguestfs-test-tool.pod:104 ../tools/virt-edit.pl:330 #: ../tools/virt-rescue.pl:255 msgid "ENVIRONMENT VARIABLES" msgstr "" # type: =item -#: ../src/guestfs.pod:2038 ../fish/guestfish.pod:941 +#: ../src/guestfs.pod:2036 ../fish/guestfish.pod:941 msgid "LIBGUESTFS_APPEND" msgstr "" # type: textblock -#: ../src/guestfs.pod:2040 ../fish/guestfish.pod:943 +#: ../src/guestfs.pod:2038 ../fish/guestfish.pod:943 msgid "Pass additional options to the guest kernel." msgstr "" # type: =item -#: ../src/guestfs.pod:2042 ../fish/guestfish.pod:945 +#: ../src/guestfs.pod:2040 ../fish/guestfish.pod:945 msgid "LIBGUESTFS_DEBUG" msgstr "" # type: textblock -#: ../src/guestfs.pod:2044 +#: ../src/guestfs.pod:2042 msgid "" "Set C to enable verbose messages. This has the same " "effect as calling C." msgstr "" # type: =item -#: ../src/guestfs.pod:2047 ../fish/guestfish.pod:950 +#: ../src/guestfs.pod:2045 ../fish/guestfish.pod:950 msgid "LIBGUESTFS_MEMSIZE" msgstr "" # type: textblock -#: ../src/guestfs.pod:2049 ../fish/guestfish.pod:952 +#: ../src/guestfs.pod:2047 ../fish/guestfish.pod:952 msgid "" "Set the memory allocated to the qemu process, in megabytes. For example:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:2052 ../fish/guestfish.pod:955 +#: ../src/guestfs.pod:2050 ../fish/guestfish.pod:955 #, no-wrap msgid "" " LIBGUESTFS_MEMSIZE=700\n" @@ -4001,58 +3996,58 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:2054 ../fish/guestfish.pod:957 +#: ../src/guestfs.pod:2052 ../fish/guestfish.pod:957 msgid "LIBGUESTFS_PATH" msgstr "" # type: textblock -#: ../src/guestfs.pod:2056 +#: ../src/guestfs.pod:2054 msgid "" "Set the path that libguestfs uses to search for kernel and initrd.img. See " "the discussion of paths in section PATH above." msgstr "" # type: =item -#: ../src/guestfs.pod:2059 ../fish/guestfish.pod:962 +#: ../src/guestfs.pod:2057 ../fish/guestfish.pod:962 msgid "LIBGUESTFS_QEMU" msgstr "" # type: textblock -#: ../src/guestfs.pod:2061 ../fish/guestfish.pod:964 +#: ../src/guestfs.pod:2059 ../fish/guestfish.pod:964 msgid "" "Set the default qemu binary that libguestfs uses. If not set, then the qemu " "which was found at compile time by the configure script is used." msgstr "" # type: textblock -#: ../src/guestfs.pod:2065 +#: ../src/guestfs.pod:2063 msgid "See also L above." msgstr "" # type: =item -#: ../src/guestfs.pod:2067 ../fish/guestfish.pod:968 +#: ../src/guestfs.pod:2065 ../fish/guestfish.pod:968 msgid "LIBGUESTFS_TRACE" msgstr "" # type: textblock -#: ../src/guestfs.pod:2069 +#: ../src/guestfs.pod:2067 msgid "" "Set C to enable command traces. This has the same " "effect as calling C." msgstr "" # type: =item -#: ../src/guestfs.pod:2072 ../fish/guestfish.pod:977 +#: ../src/guestfs.pod:2070 ../fish/guestfish.pod:977 msgid "TMPDIR" msgstr "" # type: textblock -#: ../src/guestfs.pod:2074 ../fish/guestfish.pod:979 +#: ../src/guestfs.pod:2072 ../fish/guestfish.pod:979 msgid "Location of temporary directory, defaults to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:2076 ../fish/guestfish.pod:981 +#: ../src/guestfs.pod:2074 ../fish/guestfish.pod:981 msgid "" "If libguestfs was compiled to use the supermin appliance then the real " "appliance is cached in this directory, shared between all handles belonging " @@ -4061,7 +4056,7 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2084 ../fish/guestfish.pod:1039 +#: ../src/guestfs.pod:2082 ../fish/guestfish.pod:1039 #: ../test-tool/libguestfs-test-tool.pod:109 ../fuse/guestmount.pod:233 #: ../tools/virt-edit.pl:350 ../tools/virt-win-reg.pl:484 #: ../tools/virt-df.pl:640 ../tools/virt-resize.pl:1485 @@ -4072,93 +4067,94 @@ msgid "SEE ALSO" msgstr "" # type: textblock -#: ../src/guestfs.pod:2086 +#: ../src/guestfs.pod:2084 msgid "" -"L, L, L, L, L, L, L, L, L, L, L, L, L, L, L, L, L, L." +"L, L, L, L, L, L, L, L, " +"L, L, L, L, L, L, L, L, L, L, L, " +"L, L, L." msgstr "" # type: textblock -#: ../src/guestfs.pod:2105 +#: ../src/guestfs.pod:2107 msgid "" "Tools with a similar purpose: L, L, L, L, L." msgstr "" # type: =head1 -#: ../src/guestfs.pod:2112 ../tools/virt-win-reg.pl:499 +#: ../src/guestfs.pod:2114 ../tools/virt-win-reg.pl:499 #: ../tools/virt-make-fs.pl:548 msgid "BUGS" msgstr "" # type: textblock -#: ../src/guestfs.pod:2114 +#: ../src/guestfs.pod:2116 msgid "To get a list of bugs against libguestfs use this link:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2116 +#: ../src/guestfs.pod:2118 msgid "" "L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2118 +#: ../src/guestfs.pod:2120 msgid "To report a new bug against libguestfs use this link:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2120 +#: ../src/guestfs.pod:2122 msgid "" "L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2122 +#: ../src/guestfs.pod:2124 msgid "When reporting a bug, please check:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2128 +#: ../src/guestfs.pod:2130 msgid "That the bug hasn't been reported already." msgstr "" # type: textblock -#: ../src/guestfs.pod:2132 +#: ../src/guestfs.pod:2134 msgid "That you are testing a recent version." msgstr "" # type: textblock -#: ../src/guestfs.pod:2136 +#: ../src/guestfs.pod:2138 msgid "Describe the bug accurately, and give a way to reproduce it." msgstr "" # type: textblock -#: ../src/guestfs.pod:2140 +#: ../src/guestfs.pod:2142 msgid "" "Run libguestfs-test-tool and paste the B output into the " "bug report." msgstr "" # type: =head1 -#: ../src/guestfs.pod:2145 ../fish/guestfish.pod:1058 +#: ../src/guestfs.pod:2147 ../fish/guestfish.pod:1058 #: ../test-tool/libguestfs-test-tool.pod:115 ../fuse/guestmount.pod:244 msgid "AUTHORS" msgstr "" # type: textblock -#: ../src/guestfs.pod:2147 ../fish/guestfish.pod:1060 +#: ../src/guestfs.pod:2149 ../fish/guestfish.pod:1060 #: ../test-tool/libguestfs-test-tool.pod:117 ../fuse/guestmount.pod:246 msgid "Richard W.M. Jones (C)" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2149 ../fish/guestfish.pod:1062 +#: ../src/guestfs.pod:2151 ../fish/guestfish.pod:1062 #: ../test-tool/libguestfs-test-tool.pod:119 ../fuse/guestmount.pod:248 #: ../tools/virt-edit.pl:366 ../tools/virt-win-reg.pl:514 #: ../tools/virt-df.pl:653 ../tools/virt-resize.pl:1510 @@ -4169,13 +4165,13 @@ msgid "COPYRIGHT" msgstr "" # type: textblock -#: ../src/guestfs.pod:2151 ../fish/guestfish.pod:1064 +#: ../src/guestfs.pod:2153 ../fish/guestfish.pod:1064 #: ../fuse/guestmount.pod:250 msgid "Copyright (C) 2009-2010 Red Hat Inc. L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2154 +#: ../src/guestfs.pod:2156 msgid "" "This library is free software; you can redistribute it and/or modify it " "under the terms of the GNU Lesser General Public License as published by the " @@ -4184,7 +4180,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2159 +#: ../src/guestfs.pod:2161 msgid "" "This library is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " @@ -4193,7 +4189,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2164 +#: ../src/guestfs.pod:2166 msgid "" "You should have received a copy of the GNU Lesser General Public License " "along with this library; if not, write to the Free Software Foundation, " diff --git a/po-docs/libguestfs-docs.pot b/po-docs/libguestfs-docs.pot index 7e10067..d7306ce 100644 --- a/po-docs/libguestfs-docs.pot +++ b/po-docs/libguestfs-docs.pot @@ -6,9 +6,9 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: libguestfs 1.7.12\n" +"Project-Id-Version: libguestfs 1.7.13\n" "Report-Msgid-Bugs-To: libguestfs@redhat.com\n" -"POT-Creation-Date: 2010-11-23 10:39+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -125,13 +125,20 @@ msgid "" "introduction, please read the L section next." msgstr "" -# type: =head1 +# type: textblock #: ../src/guestfs.pod:55 +msgid "" +"There are also some example programs in the L manual " +"page." +msgstr "" + +# type: =head1 +#: ../src/guestfs.pod:58 msgid "API OVERVIEW" msgstr "" # type: textblock -#: ../src/guestfs.pod:57 +#: ../src/guestfs.pod:60 msgid "" "This section provides a gentler overview of the libguestfs API. We also try " "to group API calls together, where that may not be obvious from reading " @@ -139,12 +146,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:62 +#: ../src/guestfs.pod:65 msgid "HANDLES" msgstr "" # type: textblock -#: ../src/guestfs.pod:64 +#: ../src/guestfs.pod:67 msgid "" "Before you can use libguestfs calls, you have to create a handle. Then you " "must add at least one disk image to the handle, followed by launching the " @@ -154,12 +161,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:71 +#: ../src/guestfs.pod:74 msgid "The general structure of all libguestfs-using programs looks like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:74 +#: ../src/guestfs.pod:77 #, no-wrap msgid "" " guestfs_h *g = guestfs_create ();\n" @@ -167,7 +174,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:76 +#: ../src/guestfs.pod:79 #, no-wrap msgid "" " /* Call guestfs_add_drive additional times if there are\n" @@ -178,7 +185,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:81 +#: ../src/guestfs.pod:84 #, no-wrap msgid "" " /* Most manipulation calls won't work until you've launched\n" @@ -190,7 +197,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:87 +#: ../src/guestfs.pod:90 #, no-wrap msgid "" " /* Now you can examine what partitions, LVs etc are available.\n" @@ -201,7 +208,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:92 +#: ../src/guestfs.pod:95 #, no-wrap msgid "" " /* To access a filesystem in the image, you must mount it.\n" @@ -211,7 +218,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:96 +#: ../src/guestfs.pod:99 #, no-wrap msgid "" " /* Now you can perform filesystem actions on the guest\n" @@ -222,7 +229,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:101 +#: ../src/guestfs.pod:104 #, no-wrap msgid "" " /* You only need to call guestfs_sync if you have made\n" @@ -235,7 +242,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:108 +#: ../src/guestfs.pod:111 #, no-wrap msgid "" " /* Close the handle 'g'. */\n" @@ -244,7 +251,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:111 +#: ../src/guestfs.pod:114 msgid "" "The code above doesn't include any error checking. In real code you should " "check return values carefully for errors. In general all functions that " @@ -255,12 +262,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:119 +#: ../src/guestfs.pod:122 msgid "DISK IMAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:121 +#: ../src/guestfs.pod:124 msgid "" "The image filename (C<\"guest.img\"> in the example above) could be a disk " "image from a virtual machine, a L copy of a physical hard disk, an " @@ -270,7 +277,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:127 +#: ../src/guestfs.pod:130 msgid "" "The call you should use in modern code for adding drives is " "L. To add a disk image, allowing writes, and " @@ -278,7 +285,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:131 +#: ../src/guestfs.pod:134 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -288,12 +295,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:135 +#: ../src/guestfs.pod:138 msgid "You can add a disk read-only using:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:137 +#: ../src/guestfs.pod:140 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -304,14 +311,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:142 +#: ../src/guestfs.pod:145 msgid "" "or by calling the older function L. In either case " "libguestfs won't modify the file." msgstr "" # type: textblock -#: ../src/guestfs.pod:145 +#: ../src/guestfs.pod:148 msgid "" "Be extremely cautious if the disk image is in use, eg. if it is being used " "by a virtual machine. Adding it read-write will almost certainly cause disk " @@ -319,7 +326,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:149 +#: ../src/guestfs.pod:152 msgid "" "You must add at least one disk image, and you may add multiple disk images. " "In the API, the disk images are usually referred to as C (for the " @@ -327,7 +334,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:154 +#: ../src/guestfs.pod:157 msgid "" "Once L has been called you cannot add any more images. You " "can call L to get a list of the device names, in the " @@ -335,12 +342,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:159 +#: ../src/guestfs.pod:162 msgid "MOUNTING" msgstr "" # type: textblock -#: ../src/guestfs.pod:161 +#: ../src/guestfs.pod:164 msgid "" "Before you can read or write files, create directories and so on in a disk " "image that contains filesystems, you have to mount those filesystems using " @@ -350,7 +357,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:167 +#: ../src/guestfs.pod:170 #, no-wrap msgid "" " guestfs_mount (g, \"/dev/sda1\", \"/\");\n" @@ -358,7 +365,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:169 +#: ../src/guestfs.pod:172 msgid "" "where C means literally the first partition (C<1>) of the first " "disk image that we added (C). If the disk contains Linux LVM2 " @@ -366,7 +373,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:173 +#: ../src/guestfs.pod:176 msgid "" "If you are given a disk image and you don't know what it contains then you " "have to find out. Libguestfs can do that too: use " @@ -379,19 +386,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:183 +#: ../src/guestfs.pod:186 msgid "" "To mount a disk image read-only, use L. There are " "several other variations of the C call." msgstr "" # type: =head2 -#: ../src/guestfs.pod:186 +#: ../src/guestfs.pod:189 msgid "FILESYSTEM ACCESS AND MODIFICATION" msgstr "" # type: textblock -#: ../src/guestfs.pod:188 +#: ../src/guestfs.pod:191 msgid "" "The majority of the libguestfs API consists of fairly low-level calls for " "accessing and modifying the files, directories, symlinks etc on mounted " @@ -401,21 +408,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:194 +#: ../src/guestfs.pod:197 msgid "" "Specify filenames as full paths, starting with C<\"/\"> and including the " "mount point." msgstr "" # type: textblock -#: ../src/guestfs.pod:197 +#: ../src/guestfs.pod:200 msgid "" "For example, if you mounted a filesystem at C<\"/\"> and you want to read " "the file called C<\"etc/passwd\"> then you could do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:200 +#: ../src/guestfs.pod:203 #, no-wrap msgid "" " char *data = guestfs_cat (g, \"/etc/passwd\");\n" @@ -423,7 +430,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:202 +#: ../src/guestfs.pod:205 msgid "" "This would return C as a newly allocated buffer containing the full " "content of that file (with some conditions: see also L below), " @@ -431,14 +438,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:206 +#: ../src/guestfs.pod:209 msgid "" "As another example, to create a top-level directory on that filesystem " "called C<\"var\"> you would do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:209 +#: ../src/guestfs.pod:212 #, no-wrap msgid "" " guestfs_mkdir (g, \"/var\");\n" @@ -446,12 +453,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:211 +#: ../src/guestfs.pod:214 msgid "To create a symlink you could do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:213 +#: ../src/guestfs.pod:216 #, no-wrap msgid "" " guestfs_ln_s (g, \"/etc/init.d/portmap\",\n" @@ -460,14 +467,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:216 +#: ../src/guestfs.pod:219 msgid "" "Libguestfs will reject attempts to use relative paths and there is no " "concept of a current working directory." msgstr "" # type: textblock -#: ../src/guestfs.pod:219 +#: ../src/guestfs.pod:222 msgid "" "Libguestfs can return errors in many situations: for example if the " "filesystem isn't writable, or if a file or directory that you requested " @@ -477,33 +484,33 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:225 +#: ../src/guestfs.pod:228 msgid "" "File writes are affected by the per-handle umask, set by calling " "L and defaulting to 022. See L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:228 +#: ../src/guestfs.pod:231 msgid "PARTITIONING" msgstr "" # type: textblock -#: ../src/guestfs.pod:230 +#: ../src/guestfs.pod:233 msgid "" "Libguestfs contains API calls to read, create and modify partition tables on " "disk images." msgstr "" # type: textblock -#: ../src/guestfs.pod:233 +#: ../src/guestfs.pod:236 msgid "" "In the common case where you want to create a single partition covering the " "whole disk, you should use the L call:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:237 +#: ../src/guestfs.pod:240 #, no-wrap msgid "" " const char *parttype = \"mbr\";\n" @@ -514,19 +521,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:242 +#: ../src/guestfs.pod:245 msgid "" "Obviously this effectively wipes anything that was on that disk image " "before." msgstr "" # type: =head2 -#: ../src/guestfs.pod:245 +#: ../src/guestfs.pod:248 msgid "LVM2" msgstr "" # type: textblock -#: ../src/guestfs.pod:247 +#: ../src/guestfs.pod:250 msgid "" "Libguestfs provides access to a large part of the LVM2 API, such as " "L and L. It won't make much sense " @@ -535,19 +542,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:252 +#: ../src/guestfs.pod:255 msgid "" "This author strongly recommends reading the LVM HOWTO, online at " "L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:255 +#: ../src/guestfs.pod:258 msgid "DOWNLOADING" msgstr "" # type: textblock -#: ../src/guestfs.pod:257 +#: ../src/guestfs.pod:260 msgid "" "Use L to download small, text only files. This call is " "limited to files which are less than 2 MB and which cannot contain any ASCII " @@ -555,7 +562,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:262 +#: ../src/guestfs.pod:265 msgid "" "L can be used to read files which contain arbitrary 8 " "bit data, since it returns a (pointer, size) pair. However it is still " @@ -563,31 +570,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:266 +#: ../src/guestfs.pod:269 msgid "" "L can be used to download any file, with no limits on " "content or size (even files larger than 4 GB)." msgstr "" # type: textblock -#: ../src/guestfs.pod:269 +#: ../src/guestfs.pod:272 msgid "To download multiple files, see L and L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:272 +#: ../src/guestfs.pod:275 msgid "UPLOADING" msgstr "" # type: textblock -#: ../src/guestfs.pod:274 +#: ../src/guestfs.pod:277 msgid "" "It's often the case that you want to write a file or files to the disk " "image." msgstr "" # type: textblock -#: ../src/guestfs.pod:277 +#: ../src/guestfs.pod:280 msgid "" "To write a small file with fixed content, use L. To create " "a file of all zeroes, use L (sparse) or " @@ -597,19 +604,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:283 +#: ../src/guestfs.pod:286 msgid "" "To upload a single file, use L. This call has no limits on " "file content or size (even files larger than 4 GB)." msgstr "" # type: textblock -#: ../src/guestfs.pod:286 +#: ../src/guestfs.pod:289 msgid "To upload multiple files, see L and L." msgstr "" # type: textblock -#: ../src/guestfs.pod:288 +#: ../src/guestfs.pod:291 msgid "" "However the fastest way to upload I is to " "turn them into a squashfs or CD ISO (see L and " @@ -623,12 +630,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:299 +#: ../src/guestfs.pod:302 msgid "COPYING" msgstr "" # type: textblock -#: ../src/guestfs.pod:301 +#: ../src/guestfs.pod:304 msgid "" "There are various different commands for copying between files and devices " "and in and out of the guest filesystem. These are summarised in the table " @@ -636,36 +643,36 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:307 +#: ../src/guestfs.pod:310 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:309 +#: ../src/guestfs.pod:312 msgid "" "Use L to copy a single file, or L to copy " "directories recursively." msgstr "" # type: =item -#: ../src/guestfs.pod:312 +#: ../src/guestfs.pod:315 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:314 +#: ../src/guestfs.pod:317 msgid "" "Use L which efficiently uses L to copy between files and " "devices in the guest." msgstr "" # type: textblock -#: ../src/guestfs.pod:317 +#: ../src/guestfs.pod:320 msgid "Example: duplicate the contents of an LV:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:319 +#: ../src/guestfs.pod:322 #, no-wrap msgid "" " guestfs_dd (g, \"/dev/VG/Original\", \"/dev/VG/Copy\");\n" @@ -673,7 +680,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:321 +#: ../src/guestfs.pod:324 msgid "" "The destination (C) must be at least as large as the source " "(C). To copy less than the whole source device, use " @@ -681,46 +688,46 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:325 +#: ../src/guestfs.pod:328 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:327 +#: ../src/guestfs.pod:330 msgid "Use L. See L above." msgstr "" # type: =item -#: ../src/guestfs.pod:329 +#: ../src/guestfs.pod:332 msgid "B to B" msgstr "" # type: textblock -#: ../src/guestfs.pod:331 +#: ../src/guestfs.pod:334 msgid "Use L. See L above." msgstr "" # type: =head2 -#: ../src/guestfs.pod:335 +#: ../src/guestfs.pod:338 msgid "LISTING FILES" msgstr "" # type: textblock -#: ../src/guestfs.pod:337 +#: ../src/guestfs.pod:340 msgid "" "L is just designed for humans to read (mainly when using the " "L-equivalent command C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:340 +#: ../src/guestfs.pod:343 msgid "" "L is a quick way to get a list of files in a directory from " "programs, as a flat list of strings." msgstr "" # type: textblock -#: ../src/guestfs.pod:343 +#: ../src/guestfs.pod:346 msgid "" "L is a programmatic way to get a list of files in a " "directory, plus additional information about each one. It is more " @@ -728,19 +735,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:347 +#: ../src/guestfs.pod:350 msgid "" "L and L can be used to recursively list " "files." msgstr "" # type: =head2 -#: ../src/guestfs.pod:350 +#: ../src/guestfs.pod:353 msgid "RUNNING COMMANDS" msgstr "" # type: textblock -#: ../src/guestfs.pod:352 +#: ../src/guestfs.pod:355 msgid "" "Although libguestfs is primarily an API for manipulating files inside guest " "images, we also provide some limited facilities for running commands inside " @@ -748,60 +755,60 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:356 +#: ../src/guestfs.pod:359 msgid "There are many limitations to this:" msgstr "" # type: =item -#: ../src/guestfs.pod:360 ../src/guestfs.pod:365 ../src/guestfs.pod:370 ../src/guestfs.pod:374 ../src/guestfs.pod:379 ../src/guestfs.pod:383 ../src/guestfs.pod:388 ../src/guestfs.pod:393 ../src/guestfs.pod:957 ../src/guestfs.pod:961 ../src/guestfs.pod:965 ../src/guestfs.pod:970 ../src/guestfs.pod:978 ../src/guestfs.pod:997 ../src/guestfs.pod:1005 ../src/guestfs.pod:1027 ../src/guestfs.pod:1031 ../src/guestfs.pod:1035 ../src/guestfs.pod:1039 ../src/guestfs.pod:1043 ../src/guestfs.pod:1047 ../src/guestfs.pod:1529 ../src/guestfs.pod:1534 ../src/guestfs.pod:1538 ../src/guestfs.pod:1648 ../src/guestfs.pod:1653 ../src/guestfs.pod:1657 ../src/guestfs.pod:2001 ../src/guestfs.pod:2007 ../src/guestfs.pod:2012 ../src/guestfs.pod:2018 ../src/guestfs.pod:2126 ../src/guestfs.pod:2130 ../src/guestfs.pod:2134 ../src/guestfs.pod:2138 ../src/guestfs-actions.pod:15 ../src/guestfs-actions.pod:22 ../src/guestfs-actions.pod:569 ../src/guestfs-actions.pod:577 ../src/guestfs-actions.pod:584 ../src/guestfs-actions.pod:591 ../src/guestfs-actions.pod:1587 ../src/guestfs-actions.pod:1591 ../src/guestfs-actions.pod:1595 ../src/guestfs-actions.pod:1599 ../src/guestfs-actions.pod:1607 ../src/guestfs-actions.pod:1611 ../src/guestfs-actions.pod:1615 ../src/guestfs-actions.pod:1625 ../src/guestfs-actions.pod:1629 ../src/guestfs-actions.pod:1633 ../src/guestfs-actions.pod:1771 ../src/guestfs-actions.pod:1775 ../src/guestfs-actions.pod:1780 ../src/guestfs-actions.pod:1785 ../src/guestfs-actions.pod:1846 ../src/guestfs-actions.pod:1850 ../src/guestfs-actions.pod:1855 ../fish/guestfish.pod:377 ../fish/guestfish.pod:381 ../fish/guestfish.pod:385 ../fish/guestfish.pod:389 ../fish/guestfish-actions.pod:13 ../fish/guestfish-actions.pod:20 ../fish/guestfish-actions.pod:375 ../fish/guestfish-actions.pod:383 ../fish/guestfish-actions.pod:390 ../fish/guestfish-actions.pod:397 ../fish/guestfish-actions.pod:1067 ../fish/guestfish-actions.pod:1071 ../fish/guestfish-actions.pod:1075 ../fish/guestfish-actions.pod:1079 ../fish/guestfish-actions.pod:1087 ../fish/guestfish-actions.pod:1091 ../fish/guestfish-actions.pod:1095 ../fish/guestfish-actions.pod:1105 ../fish/guestfish-actions.pod:1109 ../fish/guestfish-actions.pod:1113 ../fish/guestfish-actions.pod:1203 ../fish/guestfish-actions.pod:1207 ../fish/guestfish-actions.pod:1212 ../fish/guestfish-actions.pod:1217 ../fish/guestfish-actions.pod:1259 ../fish/guestfish-actions.pod:1263 ../fish/guestfish-actions.pod:1268 ../tools/virt-df.pl:161 ../tools/virt-df.pl:167 ../tools/virt-resize.pl:347 ../tools/virt-resize.pl:352 ../tools/virt-resize.pl:362 +#: ../src/guestfs.pod:363 ../src/guestfs.pod:368 ../src/guestfs.pod:373 ../src/guestfs.pod:377 ../src/guestfs.pod:382 ../src/guestfs.pod:386 ../src/guestfs.pod:391 ../src/guestfs.pod:396 ../src/guestfs.pod:955 ../src/guestfs.pod:959 ../src/guestfs.pod:963 ../src/guestfs.pod:968 ../src/guestfs.pod:976 ../src/guestfs.pod:995 ../src/guestfs.pod:1003 ../src/guestfs.pod:1025 ../src/guestfs.pod:1029 ../src/guestfs.pod:1033 ../src/guestfs.pod:1037 ../src/guestfs.pod:1041 ../src/guestfs.pod:1045 ../src/guestfs.pod:1527 ../src/guestfs.pod:1532 ../src/guestfs.pod:1536 ../src/guestfs.pod:1646 ../src/guestfs.pod:1651 ../src/guestfs.pod:1655 ../src/guestfs.pod:1999 ../src/guestfs.pod:2005 ../src/guestfs.pod:2010 ../src/guestfs.pod:2016 ../src/guestfs.pod:2128 ../src/guestfs.pod:2132 ../src/guestfs.pod:2136 ../src/guestfs.pod:2140 ../src/guestfs-actions.pod:15 ../src/guestfs-actions.pod:22 ../src/guestfs-actions.pod:569 ../src/guestfs-actions.pod:577 ../src/guestfs-actions.pod:584 ../src/guestfs-actions.pod:591 ../src/guestfs-actions.pod:1587 ../src/guestfs-actions.pod:1591 ../src/guestfs-actions.pod:1595 ../src/guestfs-actions.pod:1599 ../src/guestfs-actions.pod:1607 ../src/guestfs-actions.pod:1611 ../src/guestfs-actions.pod:1615 ../src/guestfs-actions.pod:1625 ../src/guestfs-actions.pod:1629 ../src/guestfs-actions.pod:1633 ../src/guestfs-actions.pod:1771 ../src/guestfs-actions.pod:1775 ../src/guestfs-actions.pod:1780 ../src/guestfs-actions.pod:1785 ../src/guestfs-actions.pod:1846 ../src/guestfs-actions.pod:1850 ../src/guestfs-actions.pod:1855 ../fish/guestfish.pod:377 ../fish/guestfish.pod:381 ../fish/guestfish.pod:385 ../fish/guestfish.pod:389 ../fish/guestfish-actions.pod:13 ../fish/guestfish-actions.pod:20 ../fish/guestfish-actions.pod:375 ../fish/guestfish-actions.pod:383 ../fish/guestfish-actions.pod:390 ../fish/guestfish-actions.pod:397 ../fish/guestfish-actions.pod:1067 ../fish/guestfish-actions.pod:1071 ../fish/guestfish-actions.pod:1075 ../fish/guestfish-actions.pod:1079 ../fish/guestfish-actions.pod:1087 ../fish/guestfish-actions.pod:1091 ../fish/guestfish-actions.pod:1095 ../fish/guestfish-actions.pod:1105 ../fish/guestfish-actions.pod:1109 ../fish/guestfish-actions.pod:1113 ../fish/guestfish-actions.pod:1203 ../fish/guestfish-actions.pod:1207 ../fish/guestfish-actions.pod:1212 ../fish/guestfish-actions.pod:1217 ../fish/guestfish-actions.pod:1259 ../fish/guestfish-actions.pod:1263 ../fish/guestfish-actions.pod:1268 ../tools/virt-df.pl:161 ../tools/virt-df.pl:167 ../tools/virt-resize.pl:347 ../tools/virt-resize.pl:352 ../tools/virt-resize.pl:362 msgid "*" msgstr "" # type: textblock -#: ../src/guestfs.pod:362 +#: ../src/guestfs.pod:365 msgid "" "The kernel version that the command runs under will be different from what " "it expects." msgstr "" # type: textblock -#: ../src/guestfs.pod:367 +#: ../src/guestfs.pod:370 msgid "" "If the command needs to communicate with daemons, then most likely they " "won't be running." msgstr "" # type: textblock -#: ../src/guestfs.pod:372 +#: ../src/guestfs.pod:375 msgid "The command will be running in limited memory." msgstr "" # type: textblock -#: ../src/guestfs.pod:376 +#: ../src/guestfs.pod:379 msgid "" "The network may not be available unless you enable it (see " "L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:381 +#: ../src/guestfs.pod:384 msgid "Only supports Linux guests (not Windows, BSD, etc)." msgstr "" # type: textblock -#: ../src/guestfs.pod:385 +#: ../src/guestfs.pod:388 msgid "Architecture limitations (eg. won't work for a PPC guest on an X86 host)." msgstr "" # type: textblock -#: ../src/guestfs.pod:390 +#: ../src/guestfs.pod:393 msgid "" "For SELinux guests, you may need to enable SELinux and load policy first. " "See L in this manpage." msgstr "" # type: textblock -#: ../src/guestfs.pod:395 +#: ../src/guestfs.pod:398 msgid "" "I It is not safe to run commands from untrusted, possibly " "malicious guests. These commands may attempt to exploit your program by " @@ -813,7 +820,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:404 +#: ../src/guestfs.pod:407 msgid "" "A secure alternative is to use libguestfs to install a \"firstboot\" script " "(a script which runs when the guest next boots normally), and to have this " @@ -823,26 +830,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:412 +#: ../src/guestfs.pod:415 msgid "" "The two main API calls to run commands are L and " "L (there are also variations)." msgstr "" # type: textblock -#: ../src/guestfs.pod:415 +#: ../src/guestfs.pod:418 msgid "" "The difference is that L runs commands using the shell, so any " "shell globs, redirections, etc will work." msgstr "" # type: =head2 -#: ../src/guestfs.pod:418 +#: ../src/guestfs.pod:421 msgid "CONFIGURATION FILES" msgstr "" # type: textblock -#: ../src/guestfs.pod:420 +#: ../src/guestfs.pod:423 msgid "" "To read and write configuration files in Linux guest filesystems, we " "strongly recommend using Augeas. For example, Augeas understands how to " @@ -851,7 +858,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:425 +#: ../src/guestfs.pod:428 msgid "" "The main Augeas calls are bound through the C APIs. We don't " "document Augeas itself here because there is excellent documentation on the " @@ -859,7 +866,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:429 +#: ../src/guestfs.pod:432 msgid "" "If you don't want to use Augeas (you fool!) then try calling " "L to get the file as a list of lines which you can " @@ -867,29 +874,29 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:433 +#: ../src/guestfs.pod:436 msgid "SELINUX" msgstr "" # type: textblock -#: ../src/guestfs.pod:435 +#: ../src/guestfs.pod:438 msgid "" "We support SELinux guests. To ensure that labeling happens correctly in " "SELinux guests, you need to enable SELinux and load the guest's policy:" msgstr "" # type: =item -#: ../src/guestfs.pod:441 ../src/guestfs.pod:1150 ../src/guestfs.pod:1281 +#: ../src/guestfs.pod:444 ../src/guestfs.pod:1148 ../src/guestfs.pod:1279 msgid "1." msgstr "" # type: textblock -#: ../src/guestfs.pod:443 +#: ../src/guestfs.pod:446 msgid "Before launching, do:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:445 +#: ../src/guestfs.pod:448 #, no-wrap msgid "" " guestfs_set_selinux (g, 1);\n" @@ -897,19 +904,19 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:447 ../src/guestfs.pod:1154 ../src/guestfs.pod:1285 +#: ../src/guestfs.pod:450 ../src/guestfs.pod:1152 ../src/guestfs.pod:1283 msgid "2." msgstr "" # type: textblock -#: ../src/guestfs.pod:449 +#: ../src/guestfs.pod:452 msgid "" "After mounting the guest's filesystem(s), load the policy. This is best " "done by running the L command in the guest itself:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:453 +#: ../src/guestfs.pod:456 #, no-wrap msgid "" " guestfs_sh (g, \"/usr/sbin/load_policy\");\n" @@ -917,26 +924,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:455 +#: ../src/guestfs.pod:458 msgid "" "(Older versions of C require you to specify the name of the " "policy file)." msgstr "" # type: =item -#: ../src/guestfs.pod:458 ../src/guestfs.pod:1291 +#: ../src/guestfs.pod:461 ../src/guestfs.pod:1289 msgid "3." msgstr "" # type: textblock -#: ../src/guestfs.pod:460 +#: ../src/guestfs.pod:463 msgid "" "Optionally, set the security context for the API. The correct security " "context to use can only be known by inspecting the guest. As an example:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:464 +#: ../src/guestfs.pod:467 #, no-wrap msgid "" " guestfs_setcon (g, \"unconfined_u:unconfined_r:unconfined_t:s0\");\n" @@ -944,24 +951,24 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:468 +#: ../src/guestfs.pod:471 msgid "This will work for running commands and editing existing files." msgstr "" # type: textblock -#: ../src/guestfs.pod:470 +#: ../src/guestfs.pod:473 msgid "" "When new files are created, you may need to label them explicitly, for " "example by running the external command C." msgstr "" # type: =head2 -#: ../src/guestfs.pod:474 +#: ../src/guestfs.pod:477 msgid "UMASK" msgstr "" # type: textblock -#: ../src/guestfs.pod:476 +#: ../src/guestfs.pod:479 msgid "" "Certain calls are affected by the current file mode creation mask (the " "\"umask\"). In particular ones which create files or directories, such as " @@ -971,14 +978,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:482 +#: ../src/guestfs.pod:485 msgid "" "The default umask is C<022>, so files are created with modes such as C<0644> " "and directories with C<0755>." msgstr "" # type: textblock -#: ../src/guestfs.pod:485 +#: ../src/guestfs.pod:488 msgid "" "There are two ways to avoid being affected by umask. Either set umask to 0 " "(call C early after launching). Or call " @@ -986,17 +993,17 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:489 +#: ../src/guestfs.pod:492 msgid "For more information about umask, see L." msgstr "" # type: =head1 -#: ../src/guestfs.pod:491 ../fish/guestfish.pod:670 +#: ../src/guestfs.pod:494 ../fish/guestfish.pod:670 msgid "ENCRYPTED DISKS" msgstr "" # type: textblock -#: ../src/guestfs.pod:493 +#: ../src/guestfs.pod:496 msgid "" "Libguestfs allows you to access Linux guests which have been encrypted using " "whole disk encryption that conforms to the Linux Unified Key Setup (LUKS) " @@ -1005,21 +1012,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:499 +#: ../src/guestfs.pod:502 msgid "" "Use L to identify LUKS-encrypted block devices (it " "returns the string C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:502 +#: ../src/guestfs.pod:505 msgid "" "Then open these devices by calling L. Obviously you " "will require the passphrase!" msgstr "" # type: textblock -#: ../src/guestfs.pod:505 +#: ../src/guestfs.pod:508 msgid "" "Opening a LUKS device creates a new device mapper device called " "C (where C is the string you supply to " @@ -1028,7 +1035,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:511 +#: ../src/guestfs.pod:514 msgid "" "LVM volume groups on the device can be made visible by calling " "L followed by L. The logical " @@ -1036,7 +1043,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:515 +#: ../src/guestfs.pod:518 msgid "" "Use the reverse process to close a LUKS device. Unmount any logical volumes " "on it, deactivate the volume groups by caling C in the usual way." msgstr "" # type: textblock -#: ../src/guestfs.pod:533 +#: ../src/guestfs.pod:536 msgid "" "Then call L. This function uses other libguestfs calls " "and certain heuristics, and returns a list of operating systems that were " @@ -1081,7 +1088,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:542 +#: ../src/guestfs.pod:545 msgid "" "For each root, you can then call various C functions " "to get additional details about that operating system. For example, call " @@ -1090,7 +1097,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:548 +#: ../src/guestfs.pod:551 msgid "" "Un*x-like and Linux-based operating systems usually consist of several " "filesystems which are mounted at boot time (for example, a separate boot " @@ -1101,7 +1108,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:555 +#: ../src/guestfs.pod:558 #, no-wrap msgid "" " /boot => /dev/sda1\n" @@ -1111,14 +1118,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:559 +#: ../src/guestfs.pod:562 msgid "" "The caller can then make calls to L to mount the " "filesystems as suggested." msgstr "" # type: textblock -#: ../src/guestfs.pod:562 +#: ../src/guestfs.pod:565 msgid "" "Be careful to mount filesystems in the right order (eg. C before " "C). Sorting the keys of the hash by length, shortest first, should " @@ -1126,7 +1133,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:566 +#: ../src/guestfs.pod:569 msgid "" "Inspection currently only works for some common operating systems. " "Contributors are welcome to send patches for other operating systems that we " @@ -1134,7 +1141,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:570 +#: ../src/guestfs.pod:573 msgid "" "Encrypted disks must be opened before inspection. See L " "for more details. The L function just ignores any " @@ -1142,7 +1149,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:574 +#: ../src/guestfs.pod:577 msgid "" "A note on the implementation: The call L performs " "inspection and caches the results in the guest handle. Subsequent calls to " @@ -1155,19 +1162,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:583 +#: ../src/guestfs.pod:586 msgid "SPECIAL CONSIDERATIONS FOR WINDOWS GUESTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:585 +#: ../src/guestfs.pod:588 msgid "" "Libguestfs can mount NTFS partitions. It does this using the " "L driver." msgstr "" # type: textblock -#: ../src/guestfs.pod:588 +#: ../src/guestfs.pod:591 msgid "" "DOS and Windows still use drive letters, and the filesystems are always " "treated as case insensitive by Windows itself, and therefore you might find " @@ -1177,7 +1184,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:594 +#: ../src/guestfs.pod:597 msgid "" "Drive letter mappings are outside the scope of libguestfs. You have to use " "libguestfs to read the appropriate Windows Registry and configuration files, " @@ -1186,21 +1193,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:599 +#: ../src/guestfs.pod:602 msgid "" "Replacing backslash characters with forward slash characters is also outside " "the scope of libguestfs, but something that you can easily do." msgstr "" # type: textblock -#: ../src/guestfs.pod:602 +#: ../src/guestfs.pod:605 msgid "" "Where we can help is in resolving the case insensitivity of paths. For " "this, call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:605 +#: ../src/guestfs.pod:608 msgid "" "Libguestfs also provides some help for decoding Windows Registry \"hive\" " "files, through the library C which is part of the libguestfs project " @@ -1211,19 +1218,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:613 +#: ../src/guestfs.pod:616 msgid "USING LIBGUESTFS WITH OTHER PROGRAMMING LANGUAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:615 +#: ../src/guestfs.pod:618 msgid "" "Although we don't want to discourage you from using the C API, we will " "mention here that the same API is also available in other languages." msgstr "" # type: textblock -#: ../src/guestfs.pod:618 +#: ../src/guestfs.pod:621 msgid "" "The API is broadly identical in all supported languages. This means that " "the C call C is C<$g-Emount($path)> in Perl, " @@ -1232,14 +1239,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:624 +#: ../src/guestfs.pod:627 msgid "" "Error messages are automatically transformed into exceptions if the language " "supports it." msgstr "" # type: textblock -#: ../src/guestfs.pod:627 +#: ../src/guestfs.pod:630 msgid "" "We don't try to \"object orientify\" parts of the API in OO languages, " "although contributors are welcome to write higher level APIs above what we " @@ -1247,36 +1254,36 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:633 +#: ../src/guestfs.pod:636 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:635 +#: ../src/guestfs.pod:638 msgid "" "You can use the I header file from C++ programs. The C++ API is " "identical to the C API. C++ classes and exceptions are not used." msgstr "" # type: =item -#: ../src/guestfs.pod:639 +#: ../src/guestfs.pod:642 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:641 +#: ../src/guestfs.pod:644 msgid "" "The C# bindings are highly experimental. Please read the warnings at the " "top of C." msgstr "" # type: =item -#: ../src/guestfs.pod:644 +#: ../src/guestfs.pod:647 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:646 +#: ../src/guestfs.pod:649 msgid "" "This is the only language binding that is working but incomplete. Only " "calls which return simple integers have been bound in Haskell, and we are " @@ -1284,103 +1291,91 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:650 +#: ../src/guestfs.pod:653 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:652 +#: ../src/guestfs.pod:655 msgid "" "Full documentation is contained in the Javadoc which is distributed with " "libguestfs." msgstr "" # type: =item -#: ../src/guestfs.pod:655 +#: ../src/guestfs.pod:658 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:657 -msgid "For documentation see the file C." +#: ../src/guestfs.pod:660 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:659 +#: ../src/guestfs.pod:662 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:661 +#: ../src/guestfs.pod:664 msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:663 +#: ../src/guestfs.pod:666 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:665 +#: ../src/guestfs.pod:668 msgid "" "For documentation see C supplied with libguestfs sources or in " "the php-libguestfs package for your distribution." msgstr "" # type: textblock -#: ../src/guestfs.pod:668 +#: ../src/guestfs.pod:671 msgid "The PHP binding only works correctly on 64 bit machines." msgstr "" # type: =item -#: ../src/guestfs.pod:670 +#: ../src/guestfs.pod:673 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:672 -msgid "For documentation do:" -msgstr "" - -# type: verbatim -#: ../src/guestfs.pod:674 -#, no-wrap -msgid "" -" $ python\n" -" >>> import guestfs\n" -" >>> help (guestfs)\n" -"\n" +#: ../src/guestfs.pod:675 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:678 +#: ../src/guestfs.pod:677 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:680 -msgid "" -"Use the Guestfs module. There is no Ruby-specific documentation, but you " -"can find examples written in Ruby in the libguestfs source." +#: ../src/guestfs.pod:679 +msgid "For documentation see L." msgstr "" # type: =item -#: ../src/guestfs.pod:683 +#: ../src/guestfs.pod:681 msgid "B" msgstr "" # type: textblock -#: ../src/guestfs.pod:685 +#: ../src/guestfs.pod:683 msgid "For documentation see L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:689 +#: ../src/guestfs.pod:687 msgid "LIBGUESTFS GOTCHAS" msgstr "" # type: textblock -#: ../src/guestfs.pod:691 +#: ../src/guestfs.pod:689 msgid "" "L: \"A feature of a " "system [...] that works in the way it is documented but is counterintuitive " @@ -1388,7 +1383,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:695 +#: ../src/guestfs.pod:693 msgid "" "Since we developed libguestfs and the associated tools, there are several " "things we would have designed differently, but are now stuck with for " @@ -1397,12 +1392,12 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:703 +#: ../src/guestfs.pod:701 msgid "Autosync / forgetting to sync." msgstr "" # type: textblock -#: ../src/guestfs.pod:705 +#: ../src/guestfs.pod:703 msgid "" "When modifying a filesystem from C or another language, you B unmount " "all filesystems and call L explicitly before you close the " @@ -1410,7 +1405,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:709 +#: ../src/guestfs.pod:707 #, no-wrap msgid "" " guestfs_set_autosync (g, 1);\n" @@ -1418,7 +1413,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:711 +#: ../src/guestfs.pod:709 msgid "" "to have the unmount/sync done automatically for you when the handle 'g' is " "closed. (This feature is called \"autosync\", L " @@ -1426,7 +1421,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:715 +#: ../src/guestfs.pod:713 msgid "" "If you forget to do this, then it is entirely possible that your changes " "won't be written out, or will be partially written, or (very rarely) that " @@ -1434,7 +1429,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:719 +#: ../src/guestfs.pod:717 msgid "" "Note that in L autosync is the default. So quick and dirty " "guestfish scripts that forget to sync will work just fine, which can make " @@ -1442,19 +1437,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:723 +#: ../src/guestfs.pod:721 msgid "" "Update: Autosync is enabled by default for all API users starting from " "libguestfs 1.5.24." msgstr "" # type: =item -#: ../src/guestfs.pod:726 +#: ../src/guestfs.pod:724 msgid "Mount option C<-o sync> should not be the default." msgstr "" # type: textblock -#: ../src/guestfs.pod:728 +#: ../src/guestfs.pod:726 msgid "" "If you use L, then C<-o sync,noatime> are added implicitly. " "However C<-o sync> does not add any reliability benefit, but does have a " @@ -1462,31 +1457,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:732 +#: ../src/guestfs.pod:730 msgid "" "The work around is to use L and set the mount " "options that you actually want to use." msgstr "" # type: =item -#: ../src/guestfs.pod:735 +#: ../src/guestfs.pod:733 msgid "Read-only should be the default." msgstr "" # type: textblock -#: ../src/guestfs.pod:737 +#: ../src/guestfs.pod:735 msgid "" "In L, I<--ro> should be the default, and you should have to " "specify I<--rw> if you want to make changes to the image." msgstr "" # type: textblock -#: ../src/guestfs.pod:740 +#: ../src/guestfs.pod:738 msgid "This would reduce the potential to corrupt live VM images." msgstr "" # type: textblock -#: ../src/guestfs.pod:742 +#: ../src/guestfs.pod:740 msgid "" "Note that many filesystems change the disk when you just mount and unmount, " "even if you didn't perform any writes. You need to use " @@ -1494,12 +1489,12 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:746 +#: ../src/guestfs.pod:744 msgid "guestfish command line is hard to use." msgstr "" # type: textblock -#: ../src/guestfs.pod:748 +#: ../src/guestfs.pod:746 msgid "" "C doesn't do what people expect (open C for " "examination). It tries to run a guestfish command C which doesn't " @@ -1509,12 +1504,12 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:755 +#: ../src/guestfs.pod:753 msgid "guestfish megabyte modifiers don't work right on all commands" msgstr "" # type: textblock -#: ../src/guestfs.pod:757 +#: ../src/guestfs.pod:755 msgid "" "In recent guestfish you can use C<1M> to mean 1 megabyte (and similarly for " "other modifiers). What guestfish actually does is to multiply the number " @@ -1524,12 +1519,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:764 +#: ../src/guestfs.pod:762 msgid "The most common is L. The guestfish command:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:766 +#: ../src/guestfs.pod:764 #, no-wrap msgid "" " lvcreate LV VG 100M\n" @@ -1537,7 +1532,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:768 +#: ../src/guestfs.pod:766 msgid "" "does not do what you might expect. Instead because L is " "already expecting megabytes, this tries to create a 100 I (100 " @@ -1546,19 +1541,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:773 +#: ../src/guestfs.pod:771 msgid "" "This could be fixed in the generator by specially marking parameters and " "return values which take bytes or other units." msgstr "" # type: =item -#: ../src/guestfs.pod:776 +#: ../src/guestfs.pod:774 msgid "Ambiguity between devices and paths" msgstr "" # type: textblock -#: ../src/guestfs.pod:778 +#: ../src/guestfs.pod:776 msgid "" "There is a subtle ambiguity in the API between a device name " "(eg. C) and a similar pathname. A file might just happen to be " @@ -1566,7 +1561,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:783 +#: ../src/guestfs.pod:781 msgid "" "In the current API we usually resolve this ambiguity by having two separate " "calls, for example L and L. " @@ -1575,7 +1570,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:789 +#: ../src/guestfs.pod:787 msgid "" "To avoid both the ambiguity and the need to duplicate some calls, we could " "make paths/devices into structured names. One way to do this would be to " @@ -1585,7 +1580,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:795 +#: ../src/guestfs.pod:793 #, no-wrap msgid "" " type path = Path of string | Device of int | Partition of int * int\n" @@ -1593,12 +1588,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:797 +#: ../src/guestfs.pod:795 msgid "which would allow you to pass arguments like:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:799 +#: ../src/guestfs.pod:797 #, no-wrap msgid "" " Path \"/foo/bar\"\n" @@ -1609,19 +1604,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:804 +#: ../src/guestfs.pod:802 msgid "" "As you can see there are still problems to resolve even with this " "representation. Also consider how it might work in guestfish." msgstr "" # type: =head2 -#: ../src/guestfs.pod:809 +#: ../src/guestfs.pod:807 msgid "PROTOCOL LIMITS" msgstr "" # type: textblock -#: ../src/guestfs.pod:811 +#: ../src/guestfs.pod:809 msgid "" "Internally libguestfs uses a message-based protocol to pass API calls and " "their responses to and from a small \"appliance\" (see L for " @@ -1632,7 +1627,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:819 +#: ../src/guestfs.pod:817 msgid "" "A simple call such as L returns its result (the file data) in " "a simple string. Because this string is at some point internally encoded as " @@ -1641,7 +1636,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:825 +#: ../src/guestfs.pod:823 msgid "" "In order to transfer large files into and out of the guest filesystem, you " "need to use particular calls that support this. The sections L " @@ -1649,26 +1644,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:829 +#: ../src/guestfs.pod:827 msgid "" "You might also consider mounting the disk image using our FUSE filesystem " "support (L)." msgstr "" # type: =head2 -#: ../src/guestfs.pod:832 +#: ../src/guestfs.pod:830 msgid "KEYS AND PASSPHRASES" msgstr "" # type: textblock -#: ../src/guestfs.pod:834 +#: ../src/guestfs.pod:832 msgid "" "Certain libguestfs calls take a parameter that contains sensitive key " "material, passed in as a C string." msgstr "" # type: textblock -#: ../src/guestfs.pod:837 +#: ../src/guestfs.pod:835 msgid "" "In the future we would hope to change the libguestfs implementation so that " "keys are L-ed into physical RAM, and thus can never end up in " @@ -1677,7 +1672,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:842 +#: ../src/guestfs.pod:840 msgid "" "Therefore you should be aware that any key parameter you pass to libguestfs " "might end up being written out to the swap partition. If this is a concern, " @@ -1685,19 +1680,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:847 +#: ../src/guestfs.pod:845 msgid "MULTIPLE HANDLES AND MULTIPLE THREADS" msgstr "" # type: textblock -#: ../src/guestfs.pod:849 +#: ../src/guestfs.pod:847 msgid "" "All high-level libguestfs actions are synchronous. If you want to use " "libguestfs asynchronously then you must create a thread." msgstr "" # type: textblock -#: ../src/guestfs.pod:852 +#: ../src/guestfs.pod:850 msgid "" "Only use the handle from a single thread. Either use the handle exclusively " "from one thread, or provide your own mutex so that two threads cannot issue " @@ -1705,33 +1700,33 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:856 +#: ../src/guestfs.pod:854 msgid "" "See the graphical program guestfs-browser for one possible architecture for " "multithreaded programs using libvirt and libguestfs." msgstr "" # type: =head2 -#: ../src/guestfs.pod:859 +#: ../src/guestfs.pod:857 msgid "PATH" msgstr "" # type: textblock -#: ../src/guestfs.pod:861 +#: ../src/guestfs.pod:859 msgid "" "Libguestfs needs a kernel and initrd.img, which it finds by looking along an " "internal path." msgstr "" # type: textblock -#: ../src/guestfs.pod:864 +#: ../src/guestfs.pod:862 msgid "" "By default it looks for these in the directory C<$libdir/guestfs> " "(eg. C or C)." msgstr "" # type: textblock -#: ../src/guestfs.pod:867 +#: ../src/guestfs.pod:865 msgid "" "Use L or set the environment variable L " "to change the directories that libguestfs will search in. The value is a " @@ -1742,12 +1737,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:874 +#: ../src/guestfs.pod:872 msgid "QEMU WRAPPERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:876 +#: ../src/guestfs.pod:874 msgid "" "If you want to compile your own qemu, run qemu from a non-standard location, " "or pass extra arguments to qemu, then you can write a shell-script wrapper " @@ -1755,7 +1750,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:880 +#: ../src/guestfs.pod:878 msgid "" "There is one important rule to remember: you I> as the " "last command in the shell script (so that qemu replaces the shell and " @@ -1764,14 +1759,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:885 +#: ../src/guestfs.pod:883 msgid "" "Here is an example of a wrapper, where I have built my own copy of qemu from " "source:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:888 +#: ../src/guestfs.pod:886 #, no-wrap msgid "" " #!/bin/sh -\n" @@ -1782,7 +1777,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:892 +#: ../src/guestfs.pod:890 msgid "" "Save this script as C (or wherever), C, and " "then use it by setting the LIBGUESTFS_QEMU environment variable. For " @@ -1790,7 +1785,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:896 +#: ../src/guestfs.pod:894 #, no-wrap msgid "" " LIBGUESTFS_QEMU=/tmp/qemu.wrapper guestfish\n" @@ -1798,19 +1793,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:898 +#: ../src/guestfs.pod:896 msgid "" "Note that libguestfs also calls qemu with the -help and -version options in " "order to determine features." msgstr "" # type: =head2 -#: ../src/guestfs.pod:901 +#: ../src/guestfs.pod:899 msgid "ABI GUARANTEE" msgstr "" # type: textblock -#: ../src/guestfs.pod:903 +#: ../src/guestfs.pod:901 msgid "" "We guarantee the libguestfs ABI (binary interface), for public, high-level " "actions as outlined in this section. Although we will deprecate some " @@ -1820,12 +1815,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:909 +#: ../src/guestfs.pod:907 msgid "BLOCK DEVICE NAMING" msgstr "" # type: textblock -#: ../src/guestfs.pod:911 +#: ../src/guestfs.pod:909 msgid "" "In the kernel there is now quite a profusion of schemata for naming block " "devices (in this context, by I I mean a physical or virtual " @@ -1840,7 +1835,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:923 +#: ../src/guestfs.pod:921 msgid "" "As discussed above, libguestfs uses a qemu appliance running an embedded " "Linux kernel to access block devices. We can run a variety of appliances " @@ -1848,7 +1843,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:927 +#: ../src/guestfs.pod:925 msgid "" "This causes a problem for libguestfs because many API calls use device or " "partition names. Working scripts and the recipe (example) scripts that we " @@ -1856,7 +1851,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:932 +#: ../src/guestfs.pod:930 msgid "" "Therefore libguestfs defines C as the I. " "Internally C names are translated, if necessary, to other names as " @@ -1865,7 +1860,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:938 +#: ../src/guestfs.pod:936 msgid "" "Note that this I applies to parameters. The L, " "L and similar calls return the true names of the " @@ -1873,12 +1868,12 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:943 +#: ../src/guestfs.pod:941 msgid "ALGORITHM FOR BLOCK DEVICE NAME TRANSLATION" msgstr "" # type: textblock -#: ../src/guestfs.pod:945 +#: ../src/guestfs.pod:943 msgid "" "Usually this translation is transparent. However in some (very rare) cases " "you may need to know the exact algorithm. Such cases include where you use " @@ -1888,7 +1883,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:951 +#: ../src/guestfs.pod:949 msgid "" "The algorithm is applied only to I which are known to be either " "device or partition names. Return values from functions such as " @@ -1896,54 +1891,54 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:959 +#: ../src/guestfs.pod:957 msgid "Is the string a parameter which is a device or partition name?" msgstr "" # type: textblock -#: ../src/guestfs.pod:963 +#: ../src/guestfs.pod:961 msgid "Does the string begin with C?" msgstr "" # type: textblock -#: ../src/guestfs.pod:967 +#: ../src/guestfs.pod:965 msgid "" "Does the named device exist? If so, we use that device. However if I " "then we continue with this algorithm." msgstr "" # type: textblock -#: ../src/guestfs.pod:972 +#: ../src/guestfs.pod:970 msgid "Replace initial C string with C." msgstr "" # type: textblock -#: ../src/guestfs.pod:974 +#: ../src/guestfs.pod:972 msgid "For example, change C to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:976 +#: ../src/guestfs.pod:974 msgid "If that named device exists, use it. If not, continue." msgstr "" # type: textblock -#: ../src/guestfs.pod:980 +#: ../src/guestfs.pod:978 msgid "Replace initial C string with C." msgstr "" # type: textblock -#: ../src/guestfs.pod:982 +#: ../src/guestfs.pod:980 msgid "If that named device exists, use it. If not, return an error." msgstr "" # type: =head3 -#: ../src/guestfs.pod:986 +#: ../src/guestfs.pod:984 msgid "PORTABILITY CONCERNS WITH BLOCK DEVICE NAMING" msgstr "" # type: textblock -#: ../src/guestfs.pod:988 +#: ../src/guestfs.pod:986 msgid "" "Although the standard naming scheme and automatic translation is useful for " "simple programs and guestfish scripts, for larger programs it is best not to " @@ -1951,50 +1946,50 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:992 +#: ../src/guestfs.pod:990 msgid "" "Where possible for maximum future portability programs using libguestfs " "should use these future-proof techniques:" msgstr "" # type: textblock -#: ../src/guestfs.pod:999 +#: ../src/guestfs.pod:997 msgid "" "Use L or L to list actual " "device names, and then use those names directly." msgstr "" # type: textblock -#: ../src/guestfs.pod:1002 +#: ../src/guestfs.pod:1000 msgid "Since those device names exist by definition, they will never be translated." msgstr "" # type: textblock -#: ../src/guestfs.pod:1007 +#: ../src/guestfs.pod:1005 msgid "" "Use higher level ways to identify filesystems, such as LVM names, UUIDs and " "filesystem labels." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1012 +#: ../src/guestfs.pod:1010 msgid "SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1014 +#: ../src/guestfs.pod:1012 msgid "" "This section discusses security implications of using libguestfs, " "particularly with untrusted or malicious guests or disk images." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1017 +#: ../src/guestfs.pod:1015 msgid "GENERAL SECURITY CONSIDERATIONS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1019 +#: ../src/guestfs.pod:1017 msgid "" "Be careful with any files or data that you download from a guest (by " "\"download\" we mean not just the L command but any " @@ -2004,42 +1999,42 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1029 +#: ../src/guestfs.pod:1027 msgid "the data (file etc) not being present" msgstr "" # type: textblock -#: ../src/guestfs.pod:1033 +#: ../src/guestfs.pod:1031 msgid "being present but empty" msgstr "" # type: textblock -#: ../src/guestfs.pod:1037 +#: ../src/guestfs.pod:1035 msgid "being much larger than normal" msgstr "" # type: textblock -#: ../src/guestfs.pod:1041 +#: ../src/guestfs.pod:1039 msgid "containing arbitrary 8 bit data" msgstr "" # type: textblock -#: ../src/guestfs.pod:1045 +#: ../src/guestfs.pod:1043 msgid "being in an unexpected character encoding" msgstr "" # type: textblock -#: ../src/guestfs.pod:1049 +#: ../src/guestfs.pod:1047 msgid "containing homoglyphs." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1053 +#: ../src/guestfs.pod:1051 msgid "SECURITY OF MOUNTING FILESYSTEMS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1055 +#: ../src/guestfs.pod:1053 msgid "" "When you mount a filesystem under Linux, mistakes in the kernel filesystem " "(VFS) module can sometimes be escalated into exploits by deliberately " @@ -2055,7 +2050,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1068 +#: ../src/guestfs.pod:1066 msgid "" "That explains why you should never mount a filesystem from an untrusted " "guest on your host kernel. How about libguestfs? We run a Linux kernel " @@ -2069,19 +2064,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1079 +#: ../src/guestfs.pod:1077 msgid "" "In any case callers can reduce the attack surface by forcing the filesystem " "type when mounting (use L)." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1082 +#: ../src/guestfs.pod:1080 msgid "PROTOCOL SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1084 +#: ../src/guestfs.pod:1082 msgid "" "The protocol is designed to be secure, being based on RFC 4506 (XDR) with a " "defined upper message size. However a program that uses libguestfs must " @@ -2091,12 +2086,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1090 +#: ../src/guestfs.pod:1088 msgid "INSPECTION SECURITY" msgstr "" # type: textblock -#: ../src/guestfs.pod:1092 +#: ../src/guestfs.pod:1090 msgid "" "Parts of the inspection API (see L) return untrusted strings " "directly from the guest, and these could contain any 8 bit data. Callers " @@ -2105,7 +2100,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1098 +#: ../src/guestfs.pod:1096 msgid "" "Guest configuration may be altered in unusual ways by the administrator of " "the virtual machine, and may not reflect reality (particularly for untrusted " @@ -2116,7 +2111,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1106 +#: ../src/guestfs.pod:1104 msgid "" "The inspection API parses guest configuration using two external libraries: " "Augeas (Linux configuration) and hivex (Windows Registry). Both are " @@ -2126,12 +2121,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1112 +#: ../src/guestfs.pod:1110 msgid "RUNNING UNTRUSTED GUEST COMMANDS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1114 +#: ../src/guestfs.pod:1112 msgid "" "Be very cautious about running commands from the guest. By running a " "command in the guest, you are giving CPU time to a binary that you do not " @@ -2141,24 +2136,24 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1120 +#: ../src/guestfs.pod:1118 msgid "CVE-2010-3851" msgstr "" # type: textblock -#: ../src/guestfs.pod:1122 +#: ../src/guestfs.pod:1120 msgid "https://bugzilla.redhat.com/642934" msgstr "" # type: textblock -#: ../src/guestfs.pod:1124 +#: ../src/guestfs.pod:1122 msgid "" "This security bug concerns the automatic disk format detection that qemu " "does on disk images." msgstr "" # type: textblock -#: ../src/guestfs.pod:1127 +#: ../src/guestfs.pod:1125 msgid "" "A raw disk image is just the raw bytes, there is no header. Other disk " "images like qcow2 contain a special header. Qemu deals with this by looking " @@ -2167,7 +2162,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1132 +#: ../src/guestfs.pod:1130 msgid "" "This allows a guest which has been given a raw disk image to write some " "other header. At next boot (or when the disk image is accessed by " @@ -2176,7 +2171,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1137 +#: ../src/guestfs.pod:1135 msgid "" "This in itself would not be a problem, but qcow2 offers many features, one " "of which is to allow a disk image to refer to another image (called the " @@ -2188,24 +2183,24 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1145 +#: ../src/guestfs.pod:1143 msgid "In libguestfs this is rather hard to exploit except under two circumstances:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1152 +#: ../src/guestfs.pod:1150 msgid "You have enabled the network or have opened the disk in write mode." msgstr "" # type: textblock -#: ../src/guestfs.pod:1156 +#: ../src/guestfs.pod:1154 msgid "" "You are also running untrusted code from the guest (see L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1161 +#: ../src/guestfs.pod:1159 msgid "" "The way to avoid this is to specify the expected disk format when adding " "disks (the optional C option to L). You " @@ -2214,31 +2209,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1166 +#: ../src/guestfs.pod:1164 msgid "" "For disks added from libvirt using calls like L, the " "format is fetched from libvirt and passed through." msgstr "" # type: textblock -#: ../src/guestfs.pod:1169 +#: ../src/guestfs.pod:1167 msgid "" "For libguestfs tools, use the I<--format> command line parameter as " "appropriate." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1172 +#: ../src/guestfs.pod:1170 msgid "CONNECTION MANAGEMENT" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1174 +#: ../src/guestfs.pod:1172 msgid "guestfs_h *" msgstr "" # type: textblock -#: ../src/guestfs.pod:1176 +#: ../src/guestfs.pod:1174 msgid "" "C is the opaque type representing a connection handle. Create a " "handle by calling L. Call L to free the " @@ -2246,19 +2241,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1180 +#: ../src/guestfs.pod:1178 msgid "" "For information on using multiple handles and threads, see the section " "L below." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1183 +#: ../src/guestfs.pod:1181 msgid "guestfs_create" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1185 +#: ../src/guestfs.pod:1183 #, no-wrap msgid "" " guestfs_h *guestfs_create (void);\n" @@ -2266,43 +2261,43 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1187 +#: ../src/guestfs.pod:1185 msgid "Create a connection handle." msgstr "" # type: textblock -#: ../src/guestfs.pod:1189 +#: ../src/guestfs.pod:1187 msgid "" "You have to call L (or one of the equivalent calls) " "on the handle at least once." msgstr "" # type: textblock -#: ../src/guestfs.pod:1192 +#: ../src/guestfs.pod:1190 msgid "" "This function returns a non-NULL pointer to a handle on success or NULL on " "error." msgstr "" # type: textblock -#: ../src/guestfs.pod:1195 +#: ../src/guestfs.pod:1193 msgid "After configuring the handle, you have to call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1197 +#: ../src/guestfs.pod:1195 msgid "" "You may also want to configure error handling for the handle. See L section below." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1200 +#: ../src/guestfs.pod:1198 msgid "guestfs_close" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1202 +#: ../src/guestfs.pod:1200 #, no-wrap msgid "" " void guestfs_close (guestfs_h *g);\n" @@ -2310,24 +2305,24 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1204 +#: ../src/guestfs.pod:1202 msgid "This closes the connection handle and frees up all resources used." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1206 +#: ../src/guestfs.pod:1204 msgid "ERROR HANDLING" msgstr "" # type: textblock -#: ../src/guestfs.pod:1208 +#: ../src/guestfs.pod:1206 msgid "" "API functions can return errors. For example, almost all functions that " "return C will return C<-1> to indicate an error." msgstr "" # type: textblock -#: ../src/guestfs.pod:1211 +#: ../src/guestfs.pod:1209 msgid "" "Additional information is available for errors: an error message string and " "optionally an error number (errno) if the thing that failed was a system " @@ -2335,7 +2330,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1215 +#: ../src/guestfs.pod:1213 msgid "" "You can get at the additional information about the last error on the handle " "by calling L, L, and/or by setting " @@ -2343,7 +2338,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1220 +#: ../src/guestfs.pod:1218 msgid "" "When the handle is created, a default error handler is installed which " "prints the error message string to C. For small short-running " @@ -2351,7 +2346,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1224 +#: ../src/guestfs.pod:1222 #, no-wrap msgid "" " if (guestfs_launch (g) == -1)\n" @@ -2360,21 +2355,21 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1227 +#: ../src/guestfs.pod:1225 msgid "" "since the default error handler will ensure that an error message has been " "printed to C before the program exits." msgstr "" # type: textblock -#: ../src/guestfs.pod:1230 +#: ../src/guestfs.pod:1228 msgid "" "For other programs the caller will almost certainly want to install an " "alternate error handler or do error handling in-line like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1233 +#: ../src/guestfs.pod:1231 #, no-wrap msgid "" " g = guestfs_create ();\n" @@ -2382,7 +2377,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1235 +#: ../src/guestfs.pod:1233 #, no-wrap msgid "" " /* This disables the default behaviour of printing errors\n" @@ -2392,7 +2387,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1239 +#: ../src/guestfs.pod:1237 #, no-wrap msgid "" " if (guestfs_launch (g) == -1) {\n" @@ -2406,7 +2401,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1247 +#: ../src/guestfs.pod:1245 msgid "" "Out of memory errors are handled differently. The default action is to call " "L. If this is undesirable, then you can set a handler using " @@ -2414,7 +2409,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1251 +#: ../src/guestfs.pod:1249 msgid "" "L returns C if the handle cannot be created, and " "because there is no handle if this happens there is no way to get additional " @@ -2424,12 +2419,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1257 +#: ../src/guestfs.pod:1255 msgid "guestfs_last_error" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1259 +#: ../src/guestfs.pod:1257 #, no-wrap msgid "" " const char *guestfs_last_error (guestfs_h *g);\n" @@ -2437,26 +2432,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1261 +#: ../src/guestfs.pod:1259 msgid "" "This returns the last error message that happened on C. If there has not " "been an error since the handle was created, then this returns C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1265 +#: ../src/guestfs.pod:1263 msgid "" "The lifetime of the returned string is until the next error occurs, or " "L is called." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1268 +#: ../src/guestfs.pod:1266 msgid "guestfs_last_errno" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1270 +#: ../src/guestfs.pod:1268 #, no-wrap msgid "" " int guestfs_last_errno (guestfs_h *g);\n" @@ -2464,27 +2459,27 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1272 +#: ../src/guestfs.pod:1270 msgid "This returns the last error number (errno) that happened on C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1274 +#: ../src/guestfs.pod:1272 msgid "If successful, an errno integer not equal to zero is returned." msgstr "" # type: textblock -#: ../src/guestfs.pod:1276 +#: ../src/guestfs.pod:1274 msgid "If no error, this returns 0. This call can return 0 in three situations:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1283 +#: ../src/guestfs.pod:1281 msgid "There has not been any error on the handle." msgstr "" # type: textblock -#: ../src/guestfs.pod:1287 +#: ../src/guestfs.pod:1285 msgid "" "There has been an error but the errno was meaningless. This corresponds to " "the case where the error did not come from a failed system call, but for " @@ -2492,14 +2487,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1293 +#: ../src/guestfs.pod:1291 msgid "" "There was an error from a failed system call, but for some reason the errno " "was not captured and returned. This usually indicates a bug in libguestfs." msgstr "" # type: textblock -#: ../src/guestfs.pod:1299 +#: ../src/guestfs.pod:1297 msgid "" "Libguestfs tries to convert the errno from inside the applicance into a " "corresponding errno for the caller (not entirely trivial: the appliance " @@ -2510,12 +2505,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1307 +#: ../src/guestfs.pod:1305 msgid "guestfs_set_error_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1309 +#: ../src/guestfs.pod:1307 #, no-wrap msgid "" " typedef void (*guestfs_error_handler_cb) (guestfs_h *g,\n" @@ -2528,7 +2523,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1316 +#: ../src/guestfs.pod:1314 msgid "" "The callback C will be called if there is an error. The parameters " "passed to the callback are an opaque data pointer and the error message " @@ -2536,14 +2531,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1320 +#: ../src/guestfs.pod:1318 msgid "" "C is not passed to the callback. To get that the callback must call " "L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1323 +#: ../src/guestfs.pod:1321 msgid "" "Note that the message string C is freed as soon as the callback " "function returns, so if you want to stash it somewhere you must make your " @@ -2551,22 +2546,22 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1327 +#: ../src/guestfs.pod:1325 msgid "The default handler prints messages on C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1329 +#: ../src/guestfs.pod:1327 msgid "If you set C to C then I handler is called." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1331 +#: ../src/guestfs.pod:1329 msgid "guestfs_get_error_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1333 +#: ../src/guestfs.pod:1331 #, no-wrap msgid "" " guestfs_error_handler_cb guestfs_get_error_handler (guestfs_h *g,\n" @@ -2575,17 +2570,17 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1336 +#: ../src/guestfs.pod:1334 msgid "Returns the current error handler callback." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1338 +#: ../src/guestfs.pod:1336 msgid "guestfs_set_out_of_memory_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1340 +#: ../src/guestfs.pod:1338 #, no-wrap msgid "" " typedef void (*guestfs_abort_cb) (void);\n" @@ -2595,29 +2590,29 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1344 +#: ../src/guestfs.pod:1342 msgid "" "The callback C will be called if there is an out of memory situation. " "I." msgstr "" # type: textblock -#: ../src/guestfs.pod:1347 +#: ../src/guestfs.pod:1345 msgid "The default is to call L." msgstr "" # type: textblock -#: ../src/guestfs.pod:1349 +#: ../src/guestfs.pod:1347 msgid "You cannot set C to C. You can't ignore out of memory situations." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1352 +#: ../src/guestfs.pod:1350 msgid "guestfs_get_out_of_memory_handler" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1354 +#: ../src/guestfs.pod:1352 #, no-wrap msgid "" " guestfs_abort_fn guestfs_get_out_of_memory_handler (guestfs_h *g);\n" @@ -2625,42 +2620,42 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1356 +#: ../src/guestfs.pod:1354 msgid "This returns the current out of memory handler." msgstr "" # type: =head1 -#: ../src/guestfs.pod:1358 +#: ../src/guestfs.pod:1356 msgid "API CALLS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1360 ../fish/guestfish.pod:908 +#: ../src/guestfs.pod:1358 ../fish/guestfish.pod:908 msgid "@ACTIONS@" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1362 +#: ../src/guestfs.pod:1360 msgid "STRUCTURES" msgstr "" # type: textblock -#: ../src/guestfs.pod:1364 +#: ../src/guestfs.pod:1362 msgid "@STRUCTS@" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1366 +#: ../src/guestfs.pod:1364 msgid "AVAILABILITY" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1368 +#: ../src/guestfs.pod:1366 msgid "GROUPS OF FUNCTIONALITY IN THE APPLIANCE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1370 +#: ../src/guestfs.pod:1368 msgid "" "Using L you can test availability of the following " "groups of functions. This test queries the appliance to see if the " @@ -2668,17 +2663,17 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1375 +#: ../src/guestfs.pod:1373 msgid "@AVAILABILITY@" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1377 +#: ../src/guestfs.pod:1375 msgid "GUESTFISH supported COMMAND" msgstr "" # type: textblock -#: ../src/guestfs.pod:1379 +#: ../src/guestfs.pod:1377 msgid "" "In L there is a handy interactive command C which " "prints out the available groups and whether they are supported by this build " @@ -2686,19 +2681,19 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1384 +#: ../src/guestfs.pod:1382 msgid "SINGLE CALLS AT COMPILE TIME" msgstr "" # type: textblock -#: ../src/guestfs.pod:1386 +#: ../src/guestfs.pod:1384 msgid "" "Since version 1.5.8, Cguestfs.hE> defines symbols for each C API " "function, such as:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1389 +#: ../src/guestfs.pod:1387 #, no-wrap msgid "" " #define LIBGUESTFS_HAVE_DD 1\n" @@ -2706,12 +2701,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1391 +#: ../src/guestfs.pod:1389 msgid "if L is available." msgstr "" # type: textblock -#: ../src/guestfs.pod:1393 +#: ../src/guestfs.pod:1391 msgid "" "Before version 1.5.8, if you needed to test whether a single libguestfs " "function is available at compile time, we recommended using build tools such " @@ -2719,7 +2714,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1398 +#: ../src/guestfs.pod:1396 #, no-wrap msgid "" " AC_CHECK_LIB([guestfs],[guestfs_create])\n" @@ -2728,19 +2723,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1401 +#: ../src/guestfs.pod:1399 msgid "" "which would result in C being either defined or not defined " "in your program." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1404 +#: ../src/guestfs.pod:1402 msgid "SINGLE CALLS AT RUN TIME" msgstr "" # type: textblock -#: ../src/guestfs.pod:1406 +#: ../src/guestfs.pod:1404 msgid "" "Testing at compile time doesn't guarantee that a function really exists in " "the library. The reason is that you might be dynamically linked against a " @@ -2750,7 +2745,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1413 +#: ../src/guestfs.pod:1411 msgid "" "You can use L to test if a function is available at run time, as " "in this example program (note that you still need the compile time check as " @@ -2758,7 +2753,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1417 +#: ../src/guestfs.pod:1415 #, no-wrap msgid "" " #include \n" @@ -2770,7 +2765,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1423 +#: ../src/guestfs.pod:1421 #, no-wrap msgid "" " main ()\n" @@ -2782,7 +2777,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1429 +#: ../src/guestfs.pod:1427 #, no-wrap msgid "" " /* Test if the function guestfs_dd is really available. */\n" @@ -2797,7 +2792,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1438 +#: ../src/guestfs.pod:1436 #, no-wrap msgid "" " if (!has_function)\n" @@ -2816,7 +2811,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1451 +#: ../src/guestfs.pod:1449 msgid "" "You may think the above is an awful lot of hassle, and it is. There are " "other ways outside of the C linking system to ensure that this kind of " @@ -2824,7 +2819,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1456 +#: ../src/guestfs.pod:1454 #, no-wrap msgid "" " Requires: libguestfs >= 1.0.80\n" @@ -2832,12 +2827,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1458 +#: ../src/guestfs.pod:1456 msgid "CALLS WITH OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1460 +#: ../src/guestfs.pod:1458 msgid "" "A recent feature of the API is the introduction of calls which take optional " "arguments. In C these are declared 3 ways. The main way is as a call which " @@ -2845,7 +2840,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1465 +#: ../src/guestfs.pod:1463 #, no-wrap msgid "" " int guestfs_add_drive_opts (guestfs_h *g, const char *filename, ...);\n" @@ -2853,14 +2848,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1467 +#: ../src/guestfs.pod:1465 msgid "" "Call this with a list of optional arguments, terminated by C<-1>. So to " "call with no optional arguments specified:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1470 +#: ../src/guestfs.pod:1468 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename, -1);\n" @@ -2868,12 +2863,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1472 +#: ../src/guestfs.pod:1470 msgid "With a single optional argument:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1474 +#: ../src/guestfs.pod:1472 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -2883,12 +2878,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1478 +#: ../src/guestfs.pod:1476 msgid "With two:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1480 +#: ../src/guestfs.pod:1478 #, no-wrap msgid "" " guestfs_add_drive_opts (g, filename,\n" @@ -2899,19 +2894,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1485 +#: ../src/guestfs.pod:1483 msgid "" "and so forth. Don't forget the terminating C<-1> otherwise Bad Things will " "happen!" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1488 +#: ../src/guestfs.pod:1486 msgid "USING va_list FOR OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1490 +#: ../src/guestfs.pod:1488 msgid "" "The second variant has the same name with the suffix C<_va>, which works the " "same way but takes a C. See the C manual for details. For the " @@ -2919,7 +2914,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1494 +#: ../src/guestfs.pod:1492 #, no-wrap msgid "" " int guestfs_add_drive_opts_va (guestfs_h *g, const char *filename,\n" @@ -2928,12 +2923,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1497 +#: ../src/guestfs.pod:1495 msgid "CONSTRUCTING OPTIONAL ARGUMENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1499 +#: ../src/guestfs.pod:1497 msgid "" "The third variant is useful where you need to construct these calls. You " "pass in a structure where you fill in the optional fields. The structure " @@ -2943,7 +2938,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1505 +#: ../src/guestfs.pod:1503 #, no-wrap msgid "" " struct guestfs_add_drive_opts_argv {\n" @@ -2958,12 +2953,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1514 +#: ../src/guestfs.pod:1512 msgid "You could call it like this:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1516 +#: ../src/guestfs.pod:1514 #, no-wrap msgid "" " struct guestfs_add_drive_opts_argv optargs = {\n" @@ -2976,7 +2971,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1523 +#: ../src/guestfs.pod:1521 #, no-wrap msgid "" " guestfs_add_drive_opts_argv (g, filename, &optargs);\n" @@ -2984,34 +2979,34 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1525 ../src/guestfs-actions.pod:11 ../src/guestfs-actions.pod:1842 ../fish/guestfish-actions.pod:9 ../fish/guestfish-actions.pod:1255 +#: ../src/guestfs.pod:1523 ../src/guestfs-actions.pod:11 ../src/guestfs-actions.pod:1842 ../fish/guestfish-actions.pod:9 ../fish/guestfish-actions.pod:1255 msgid "Notes:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1531 +#: ../src/guestfs.pod:1529 msgid "The C<_BITMASK> suffix on each option name when specifying the bitmask." msgstr "" # type: textblock -#: ../src/guestfs.pod:1536 +#: ../src/guestfs.pod:1534 msgid "You do not need to fill in all fields of the structure." msgstr "" # type: textblock -#: ../src/guestfs.pod:1540 +#: ../src/guestfs.pod:1538 msgid "" "There must be a one-to-one correspondence between fields of the structure " "that are filled in, and bits set in the bitmask." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1545 +#: ../src/guestfs.pod:1543 msgid "OPTIONAL ARGUMENTS IN OTHER LANGUAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:1547 +#: ../src/guestfs.pod:1545 msgid "" "In other languages, optional arguments are expressed in the way that is " "natural for that language. We refer you to the language-specific " @@ -3019,31 +3014,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1551 +#: ../src/guestfs.pod:1549 msgid "For guestfish, see L." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1553 +#: ../src/guestfs.pod:1551 msgid "SETTING CALLBACKS TO HANDLE EVENTS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1555 +#: ../src/guestfs.pod:1553 msgid "" "The child process generates events in some situations. Current events " "include: receiving a log message, the child process exits." msgstr "" # type: textblock -#: ../src/guestfs.pod:1558 +#: ../src/guestfs.pod:1556 msgid "" "Use the C functions to set a callback for different " "types of events." msgstr "" # type: textblock -#: ../src/guestfs.pod:1561 +#: ../src/guestfs.pod:1559 msgid "" "Only I can be registered for each handle. " "Calling C again overwrites the previous callback of " @@ -3052,12 +3047,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1566 +#: ../src/guestfs.pod:1564 msgid "guestfs_set_log_message_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1568 +#: ../src/guestfs.pod:1566 #, no-wrap msgid "" " typedef void (*guestfs_log_message_cb) (guestfs_h *g, void *opaque,\n" @@ -3069,31 +3064,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1574 +#: ../src/guestfs.pod:1572 msgid "" "The callback function C will be called whenever qemu or the guest writes " "anything to the console." msgstr "" # type: textblock -#: ../src/guestfs.pod:1577 +#: ../src/guestfs.pod:1575 msgid "Use this function to capture kernel messages and similar." msgstr "" # type: textblock -#: ../src/guestfs.pod:1579 +#: ../src/guestfs.pod:1577 msgid "" "Normally there is no log message handler, and log messages are just " "discarded." msgstr "" # type: =head2 -#: ../src/guestfs.pod:1582 +#: ../src/guestfs.pod:1580 msgid "guestfs_set_subprocess_quit_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1584 +#: ../src/guestfs.pod:1582 #, no-wrap msgid "" " typedef void (*guestfs_subprocess_quit_cb) (guestfs_h *g, void *opaque);\n" @@ -3104,7 +3099,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1589 +#: ../src/guestfs.pod:1587 msgid "" "The callback function C will be called when the child process quits, " "either asynchronously or if killed by L. (This " @@ -3112,12 +3107,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1594 +#: ../src/guestfs.pod:1592 msgid "guestfs_set_launch_done_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1596 +#: ../src/guestfs.pod:1594 #, no-wrap msgid "" " typedef void (*guestfs_launch_done_cb) (guestfs_h *g, void *opaque);\n" @@ -3128,7 +3123,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1601 +#: ../src/guestfs.pod:1599 msgid "" "The callback function C will be called when the child process becomes " "ready first time after it has been launched. (This corresponds to a " @@ -3136,12 +3131,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1605 +#: ../src/guestfs.pod:1603 msgid "guestfs_set_close_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1607 +#: ../src/guestfs.pod:1605 #, no-wrap msgid "" " typedef void (*guestfs_close_cb) (guestfs_h *g, void *opaque);\n" @@ -3152,14 +3147,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1612 +#: ../src/guestfs.pod:1610 msgid "" "The callback function C will be called while the handle is being closed " "(synchronously from L)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1615 +#: ../src/guestfs.pod:1613 msgid "" "Note that libguestfs installs an L handler to try to clean up " "handles that are open when the program exits. This means that this callback " @@ -3170,12 +3165,12 @@ msgid "" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1623 +#: ../src/guestfs.pod:1621 msgid "guestfs_set_progress_callback" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1625 +#: ../src/guestfs.pod:1623 #, no-wrap msgid "" " typedef void (*guestfs_progress_cb) (guestfs_h *g, void *opaque,\n" @@ -3188,7 +3183,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1632 +#: ../src/guestfs.pod:1630 msgid "" "Some long-running operations can generate progress messages. If this " "callback is registered, then it will be called each time a progress message " @@ -3198,7 +3193,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1638 +#: ../src/guestfs.pod:1636 msgid "" "The callback receives two numbers: C and C. The units of " "C are not defined, although for some operations C may relate " @@ -3207,31 +3202,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1644 +#: ../src/guestfs.pod:1642 msgid "The only defined and stable parts of the API are:" msgstr "" # type: textblock -#: ../src/guestfs.pod:1650 +#: ../src/guestfs.pod:1648 msgid "" "The callback can display to the user some type of progress bar or indicator " "which shows the ratio of C:C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1655 +#: ../src/guestfs.pod:1653 msgid "0 E= C E= C" msgstr "" # type: textblock -#: ../src/guestfs.pod:1659 +#: ../src/guestfs.pod:1657 msgid "" "If any progress notification is sent during a call, then a final progress " "notification is always sent when C = C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1662 +#: ../src/guestfs.pod:1660 msgid "" "This is to simplify caller code, so callers can easily set the progress " "indicator to \"100%\" at the end of the operation, without requiring special " @@ -3239,7 +3234,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1668 +#: ../src/guestfs.pod:1666 msgid "" "The callback also receives the procedure number and serial number of the " "call. These are only useful for debugging protocol issues, and the callback " @@ -3248,12 +3243,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1673 +#: ../src/guestfs.pod:1671 msgid "PRIVATE DATA AREA" msgstr "" # type: textblock -#: ../src/guestfs.pod:1675 +#: ../src/guestfs.pod:1673 msgid "" "You can attach named pieces of private data to the libguestfs handle, and " "fetch them by name for the lifetime of the handle. This is called the " @@ -3261,12 +3256,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1679 +#: ../src/guestfs.pod:1677 msgid "To attach a named piece of data, use the following call:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1681 +#: ../src/guestfs.pod:1679 #, no-wrap msgid "" " void guestfs_set_private (guestfs_h *g, const char *key, void *data);\n" @@ -3274,7 +3269,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1683 +#: ../src/guestfs.pod:1681 msgid "" "C is the name to associate with this data, and C is an arbitrary " "pointer (which can be C). Any previous item with the same name is " @@ -3282,7 +3277,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1687 +#: ../src/guestfs.pod:1685 msgid "" "You can use any C you want, but names beginning with an underscore " "character are reserved for internal libguestfs purposes (for implementing " @@ -3291,12 +3286,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1692 +#: ../src/guestfs.pod:1690 msgid "To retrieve the pointer, use:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1694 +#: ../src/guestfs.pod:1692 #, no-wrap msgid "" " void *guestfs_get_private (guestfs_h *g, const char *key);\n" @@ -3304,7 +3299,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1696 +#: ../src/guestfs.pod:1694 msgid "" "This function returns C if either no data is found associated with " "C, or if the user previously set the C's C pointer to " @@ -3312,7 +3307,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1700 +#: ../src/guestfs.pod:1698 msgid "" "Libguestfs does not try to look at or interpret the C pointer in any " "way. As far as libguestfs is concerned, it need not be a valid pointer at " @@ -3324,31 +3319,31 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1708 +#: ../src/guestfs.pod:1706 msgid "" "The private data area is implemented using a hash table, and should be " "reasonably efficient for moderate numbers of keys." msgstr "" # type: =end -#: ../src/guestfs.pod:1711 ../src/guestfs.pod:1716 +#: ../src/guestfs.pod:1709 ../src/guestfs.pod:1714 msgid "html" msgstr "" # type: textblock -#: ../src/guestfs.pod:1713 +#: ../src/guestfs.pod:1711 msgid "" " " msgstr "" # type: =head1 -#: ../src/guestfs.pod:1718 +#: ../src/guestfs.pod:1716 msgid "ARCHITECTURE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1720 +#: ../src/guestfs.pod:1718 msgid "" "Internally, libguestfs is implemented by running an appliance (a special " "type of small virtual machine) using L. Qemu runs as a child " @@ -3356,7 +3351,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1724 +#: ../src/guestfs.pod:1722 #, no-wrap msgid "" " ___________________\n" @@ -3382,14 +3377,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1744 +#: ../src/guestfs.pod:1742 msgid "" "The library, linked to the main program, creates the child process and hence " "the appliance in the L function." msgstr "" # type: textblock -#: ../src/guestfs.pod:1747 +#: ../src/guestfs.pod:1745 msgid "" "Inside the appliance is a Linux kernel and a complete stack of userspace " "tools (such as LVM and ext2 programs) and a small controlling daemon called " @@ -3401,7 +3396,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1756 +#: ../src/guestfs.pod:1754 msgid "" "A common misunderstanding is that the appliance \"is\" the virtual machine. " "Although the disk image you are attached to might also be used by some " @@ -3412,17 +3407,17 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1763 +#: ../src/guestfs.pod:1761 msgid "STATE MACHINE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1765 +#: ../src/guestfs.pod:1763 msgid "libguestfs uses a state machine to model the child process:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1767 +#: ../src/guestfs.pod:1765 #, no-wrap msgid "" " |\n" @@ -3450,7 +3445,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1789 +#: ../src/guestfs.pod:1787 msgid "" "The normal transitions are (1) CONFIG (when the handle is created, but there " "is no child process), (2) LAUNCHING (when the child process is booting up), " @@ -3459,7 +3454,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1794 +#: ../src/guestfs.pod:1792 msgid "" "The guest may be killed by L, or may die " "asynchronously at any time (eg. due to some internal error), and that causes " @@ -3467,14 +3462,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1798 +#: ../src/guestfs.pod:1796 msgid "" "Configuration commands for qemu such as L can only be " "issued when in the CONFIG state." msgstr "" # type: textblock -#: ../src/guestfs.pod:1801 +#: ../src/guestfs.pod:1799 msgid "" "The API offers one call that goes from CONFIG through LAUNCHING to READY. " "L blocks until the child process is READY to accept " @@ -3483,7 +3478,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1807 +#: ../src/guestfs.pod:1805 msgid "" "API actions such as L can only be issued when in the READY " "state. These API calls block waiting for the command to be carried out " @@ -3493,7 +3488,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1813 +#: ../src/guestfs.pod:1811 msgid "" "Finally, the child process sends asynchronous messages back to the main " "program, such as kernel log messages. You can register a callback to " @@ -3501,24 +3496,24 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1817 +#: ../src/guestfs.pod:1815 msgid "INTERNALS" msgstr "" # type: =head2 -#: ../src/guestfs.pod:1819 +#: ../src/guestfs.pod:1817 msgid "COMMUNICATION PROTOCOL" msgstr "" # type: textblock -#: ../src/guestfs.pod:1821 +#: ../src/guestfs.pod:1819 msgid "" "Don't rely on using this protocol directly. This section documents how it " "currently works, but it may change at any time." msgstr "" # type: textblock -#: ../src/guestfs.pod:1824 +#: ../src/guestfs.pod:1822 msgid "" "The protocol used to talk between the library and the daemon running inside " "the qemu virtual machine is a simple RPC mechanism built on top of XDR (RFC " @@ -3526,14 +3521,14 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1828 +#: ../src/guestfs.pod:1826 msgid "" "The detailed format of structures is in C (note: " "this file is automatically generated)." msgstr "" # type: textblock -#: ../src/guestfs.pod:1831 +#: ../src/guestfs.pod:1829 msgid "" "There are two broad cases, ordinary functions that don't have any C " "and C parameters, which are handled with very simple request/reply " @@ -3543,17 +3538,17 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1838 +#: ../src/guestfs.pod:1836 msgid "ORDINARY FUNCTIONS (NO FILEIN/FILEOUT PARAMS)" msgstr "" # type: textblock -#: ../src/guestfs.pod:1840 +#: ../src/guestfs.pod:1838 msgid "For ordinary functions, the request message is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1842 +#: ../src/guestfs.pod:1840 #, no-wrap msgid "" " total length (header + arguments,\n" @@ -3564,7 +3559,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1847 +#: ../src/guestfs.pod:1845 msgid "" "The total length field allows the daemon to allocate a fixed size buffer " "into which it slurps the rest of the message. As a result, the total length " @@ -3573,26 +3568,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1853 +#: ../src/guestfs.pod:1851 msgid "" "Note also that many functions don't take any arguments, in which case the " "C_args> is completely omitted." msgstr "" # type: textblock -#: ../src/guestfs.pod:1856 +#: ../src/guestfs.pod:1854 msgid "" "The header contains the procedure number (C) which is how the " "receiver knows what type of args structure to expect, or none at all." msgstr "" # type: textblock -#: ../src/guestfs.pod:1860 +#: ../src/guestfs.pod:1858 msgid "The reply message for ordinary functions is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1862 +#: ../src/guestfs.pod:1860 #, no-wrap msgid "" " total length (header + ret,\n" @@ -3603,26 +3598,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1867 +#: ../src/guestfs.pod:1865 msgid "" "As above the C_ret> structure may be completely omitted for " "functions that return no formal return values." msgstr "" # type: textblock -#: ../src/guestfs.pod:1870 +#: ../src/guestfs.pod:1868 msgid "As above the total length of the reply is limited to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:1873 +#: ../src/guestfs.pod:1871 msgid "" "In the case of an error, a flag is set in the header, and the reply message " "is slightly changed:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1876 +#: ../src/guestfs.pod:1874 #, no-wrap msgid "" " total length (header + error,\n" @@ -3633,19 +3628,19 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1881 +#: ../src/guestfs.pod:1879 msgid "" "The C structure contains the error message as a " "string." msgstr "" # type: =head3 -#: ../src/guestfs.pod:1884 +#: ../src/guestfs.pod:1882 msgid "FUNCTIONS THAT HAVE FILEIN PARAMETERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1886 +#: ../src/guestfs.pod:1884 msgid "" "A C parameter indicates that we transfer a file I the guest. " "The normal request message is sent (see above). However this is followed by " @@ -3653,7 +3648,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1890 +#: ../src/guestfs.pod:1888 #, no-wrap msgid "" " total length (header + arguments,\n" @@ -3667,12 +3662,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1898 +#: ../src/guestfs.pod:1896 msgid "The \"sequence of chunks\" is:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1900 +#: ../src/guestfs.pod:1898 #, no-wrap msgid "" " length of chunk (not including length word itself)\n" @@ -3686,7 +3681,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1908 +#: ../src/guestfs.pod:1906 msgid "" "The final chunk has the C field set to zero. Additionally a flag " "is set in the final chunk to indicate either successful completion or early " @@ -3694,7 +3689,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1912 +#: ../src/guestfs.pod:1910 msgid "" "At time of writing there are no functions that have more than one FileIn " "parameter. However this is (theoretically) supported, by sending the " @@ -3703,7 +3698,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1917 +#: ../src/guestfs.pod:1915 msgid "" "Both the library (sender) I the daemon (receiver) may cancel the " "transfer. The library does this by sending a chunk with a special flag set " @@ -3712,7 +3707,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1923 +#: ../src/guestfs.pod:1921 msgid "" "The daemon may also cancel. It does this by writing a special word " "C to the socket. The library listens for this during " @@ -3724,7 +3719,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1932 +#: ../src/guestfs.pod:1930 msgid "" "This protocol allows the transfer of arbitrary sized files (no 32 bit " "limit), and also files where the size is not known in advance (eg. from " @@ -3734,19 +3729,19 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1938 +#: ../src/guestfs.pod:1936 msgid "FUNCTIONS THAT HAVE FILEOUT PARAMETERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1940 +#: ../src/guestfs.pod:1938 msgid "" "The protocol for FileOut parameters is exactly the same as for FileIn " "parameters, but with the roles of daemon and library reversed." msgstr "" # type: verbatim -#: ../src/guestfs.pod:1943 +#: ../src/guestfs.pod:1941 #, no-wrap msgid "" " total length (header + ret,\n" @@ -3760,12 +3755,12 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1951 +#: ../src/guestfs.pod:1949 msgid "INITIAL MESSAGE" msgstr "" # type: textblock -#: ../src/guestfs.pod:1953 +#: ../src/guestfs.pod:1951 msgid "" "When the daemon launches it sends an initial word (C) " "which indicates that the guest and daemon is alive. This is what " @@ -3773,12 +3768,12 @@ msgid "" msgstr "" # type: =head3 -#: ../src/guestfs.pod:1957 +#: ../src/guestfs.pod:1955 msgid "PROGRESS NOTIFICATION MESSAGES" msgstr "" # type: textblock -#: ../src/guestfs.pod:1959 +#: ../src/guestfs.pod:1957 msgid "" "The daemon may send progress notification messages at any time. These are " "distinguished by the normal length word being replaced by " @@ -3786,7 +3781,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1963 +#: ../src/guestfs.pod:1961 msgid "" "The library turns them into progress callbacks (see " "C) if there is a callback registered, or " @@ -3794,7 +3789,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1967 +#: ../src/guestfs.pod:1965 msgid "" "The daemon self-limits the frequency of progress messages it sends (see " "C). Not all calls generate progress " @@ -3802,12 +3797,12 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:1971 +#: ../src/guestfs.pod:1969 msgid "LIBGUESTFS VERSION NUMBERS" msgstr "" # type: textblock -#: ../src/guestfs.pod:1973 +#: ../src/guestfs.pod:1971 msgid "" "Since April 2010, libguestfs has started to make separate development and " "stable releases, along with corresponding branches in our git repository. " @@ -3815,7 +3810,7 @@ msgid "" msgstr "" # type: verbatim -#: ../src/guestfs.pod:1978 +#: ../src/guestfs.pod:1976 #, no-wrap msgid "" " even numbers for stable: 1.2.x, 1.4.x, ...\n" @@ -3832,12 +3827,12 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1989 +#: ../src/guestfs.pod:1987 msgid "Thus \"1.3.5\" is the 5th update to the development branch \"1.3\"." msgstr "" # type: textblock -#: ../src/guestfs.pod:1991 +#: ../src/guestfs.pod:1989 msgid "" "As time passes we cherry pick fixes from the development branch and backport " "those into the stable branch, the effect being that the stable branch should " @@ -3847,26 +3842,26 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:1997 +#: ../src/guestfs.pod:1995 msgid "Our criteria for backporting changes are:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2003 +#: ../src/guestfs.pod:2001 msgid "" "Documentation changes which don't affect any code are backported unless the " "documentation refers to a future feature which is not in stable." msgstr "" # type: textblock -#: ../src/guestfs.pod:2009 +#: ../src/guestfs.pod:2007 msgid "" "Bug fixes which are not controversial, fix obvious problems, and have been " "well tested are backported." msgstr "" # type: textblock -#: ../src/guestfs.pod:2014 +#: ../src/guestfs.pod:2012 msgid "" "Simple rearrangements of code which shouldn't affect how it works get " "backported. This is so that the code in the two branches doesn't get too " @@ -3874,7 +3869,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2020 +#: ../src/guestfs.pod:2018 msgid "" "We I backport new features, new APIs, new tools etc, except in one " "exceptional case: the new feature is required in order to implement an " @@ -3882,7 +3877,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2026 +#: ../src/guestfs.pod:2024 msgid "" "A new stable branch starts when we think the new features in development are " "substantial and compelling enough over the current stable branch to warrant " @@ -3893,44 +3888,44 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2034 ../fish/guestfish.pod:915 ../test-tool/libguestfs-test-tool.pod:104 ../tools/virt-edit.pl:330 ../tools/virt-rescue.pl:255 +#: ../src/guestfs.pod:2032 ../fish/guestfish.pod:915 ../test-tool/libguestfs-test-tool.pod:104 ../tools/virt-edit.pl:330 ../tools/virt-rescue.pl:255 msgid "ENVIRONMENT VARIABLES" msgstr "" # type: =item -#: ../src/guestfs.pod:2038 ../fish/guestfish.pod:941 +#: ../src/guestfs.pod:2036 ../fish/guestfish.pod:941 msgid "LIBGUESTFS_APPEND" msgstr "" # type: textblock -#: ../src/guestfs.pod:2040 ../fish/guestfish.pod:943 +#: ../src/guestfs.pod:2038 ../fish/guestfish.pod:943 msgid "Pass additional options to the guest kernel." msgstr "" # type: =item -#: ../src/guestfs.pod:2042 ../fish/guestfish.pod:945 +#: ../src/guestfs.pod:2040 ../fish/guestfish.pod:945 msgid "LIBGUESTFS_DEBUG" msgstr "" # type: textblock -#: ../src/guestfs.pod:2044 +#: ../src/guestfs.pod:2042 msgid "" "Set C to enable verbose messages. This has the same " "effect as calling C." msgstr "" # type: =item -#: ../src/guestfs.pod:2047 ../fish/guestfish.pod:950 +#: ../src/guestfs.pod:2045 ../fish/guestfish.pod:950 msgid "LIBGUESTFS_MEMSIZE" msgstr "" # type: textblock -#: ../src/guestfs.pod:2049 ../fish/guestfish.pod:952 +#: ../src/guestfs.pod:2047 ../fish/guestfish.pod:952 msgid "Set the memory allocated to the qemu process, in megabytes. For example:" msgstr "" # type: verbatim -#: ../src/guestfs.pod:2052 ../fish/guestfish.pod:955 +#: ../src/guestfs.pod:2050 ../fish/guestfish.pod:955 #, no-wrap msgid "" " LIBGUESTFS_MEMSIZE=700\n" @@ -3938,58 +3933,58 @@ msgid "" msgstr "" # type: =item -#: ../src/guestfs.pod:2054 ../fish/guestfish.pod:957 +#: ../src/guestfs.pod:2052 ../fish/guestfish.pod:957 msgid "LIBGUESTFS_PATH" msgstr "" # type: textblock -#: ../src/guestfs.pod:2056 +#: ../src/guestfs.pod:2054 msgid "" "Set the path that libguestfs uses to search for kernel and initrd.img. See " "the discussion of paths in section PATH above." msgstr "" # type: =item -#: ../src/guestfs.pod:2059 ../fish/guestfish.pod:962 +#: ../src/guestfs.pod:2057 ../fish/guestfish.pod:962 msgid "LIBGUESTFS_QEMU" msgstr "" # type: textblock -#: ../src/guestfs.pod:2061 ../fish/guestfish.pod:964 +#: ../src/guestfs.pod:2059 ../fish/guestfish.pod:964 msgid "" "Set the default qemu binary that libguestfs uses. If not set, then the qemu " "which was found at compile time by the configure script is used." msgstr "" # type: textblock -#: ../src/guestfs.pod:2065 +#: ../src/guestfs.pod:2063 msgid "See also L above." msgstr "" # type: =item -#: ../src/guestfs.pod:2067 ../fish/guestfish.pod:968 +#: ../src/guestfs.pod:2065 ../fish/guestfish.pod:968 msgid "LIBGUESTFS_TRACE" msgstr "" # type: textblock -#: ../src/guestfs.pod:2069 +#: ../src/guestfs.pod:2067 msgid "" "Set C to enable command traces. This has the same " "effect as calling C." msgstr "" # type: =item -#: ../src/guestfs.pod:2072 ../fish/guestfish.pod:977 +#: ../src/guestfs.pod:2070 ../fish/guestfish.pod:977 msgid "TMPDIR" msgstr "" # type: textblock -#: ../src/guestfs.pod:2074 ../fish/guestfish.pod:979 +#: ../src/guestfs.pod:2072 ../fish/guestfish.pod:979 msgid "Location of temporary directory, defaults to C." msgstr "" # type: textblock -#: ../src/guestfs.pod:2076 ../fish/guestfish.pod:981 +#: ../src/guestfs.pod:2074 ../fish/guestfish.pod:981 msgid "" "If libguestfs was compiled to use the supermin appliance then the real " "appliance is cached in this directory, shared between all handles belonging " @@ -3998,101 +3993,103 @@ msgid "" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2084 ../fish/guestfish.pod:1039 ../test-tool/libguestfs-test-tool.pod:109 ../fuse/guestmount.pod:233 ../tools/virt-edit.pl:350 ../tools/virt-win-reg.pl:484 ../tools/virt-df.pl:640 ../tools/virt-resize.pl:1485 ../tools/virt-list-filesystems.pl:189 ../tools/virt-tar.pl:281 ../tools/virt-rescue.pl:267 ../tools/virt-make-fs.pl:534 ../tools/virt-list-partitions.pl:257 +#: ../src/guestfs.pod:2082 ../fish/guestfish.pod:1039 ../test-tool/libguestfs-test-tool.pod:109 ../fuse/guestmount.pod:233 ../tools/virt-edit.pl:350 ../tools/virt-win-reg.pl:484 ../tools/virt-df.pl:640 ../tools/virt-resize.pl:1485 ../tools/virt-list-filesystems.pl:189 ../tools/virt-tar.pl:281 ../tools/virt-rescue.pl:267 ../tools/virt-make-fs.pl:534 ../tools/virt-list-partitions.pl:257 msgid "SEE ALSO" msgstr "" # type: textblock -#: ../src/guestfs.pod:2086 +#: ../src/guestfs.pod:2084 msgid "" -"L, L, L, L, " -"L, L, L, " -"L, L, L, " -"L, L, L, L, " -"L, L, L, L." +"L, L, L, " +"L, L, L, L, " +"L, L, L, " +"L, L, " +"L, L, L, " +"L, L, L, L, " +"L, L, L." msgstr "" # type: textblock -#: ../src/guestfs.pod:2105 +#: ../src/guestfs.pod:2107 msgid "" "Tools with a similar purpose: L, L, L, " "L, L." msgstr "" # type: =head1 -#: ../src/guestfs.pod:2112 ../tools/virt-win-reg.pl:499 ../tools/virt-make-fs.pl:548 +#: ../src/guestfs.pod:2114 ../tools/virt-win-reg.pl:499 ../tools/virt-make-fs.pl:548 msgid "BUGS" msgstr "" # type: textblock -#: ../src/guestfs.pod:2114 +#: ../src/guestfs.pod:2116 msgid "To get a list of bugs against libguestfs use this link:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2116 +#: ../src/guestfs.pod:2118 msgid "L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2118 +#: ../src/guestfs.pod:2120 msgid "To report a new bug against libguestfs use this link:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2120 +#: ../src/guestfs.pod:2122 msgid "L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2122 +#: ../src/guestfs.pod:2124 msgid "When reporting a bug, please check:" msgstr "" # type: textblock -#: ../src/guestfs.pod:2128 +#: ../src/guestfs.pod:2130 msgid "That the bug hasn't been reported already." msgstr "" # type: textblock -#: ../src/guestfs.pod:2132 +#: ../src/guestfs.pod:2134 msgid "That you are testing a recent version." msgstr "" # type: textblock -#: ../src/guestfs.pod:2136 +#: ../src/guestfs.pod:2138 msgid "Describe the bug accurately, and give a way to reproduce it." msgstr "" # type: textblock -#: ../src/guestfs.pod:2140 +#: ../src/guestfs.pod:2142 msgid "" "Run libguestfs-test-tool and paste the B output into the " "bug report." msgstr "" # type: =head1 -#: ../src/guestfs.pod:2145 ../fish/guestfish.pod:1058 ../test-tool/libguestfs-test-tool.pod:115 ../fuse/guestmount.pod:244 +#: ../src/guestfs.pod:2147 ../fish/guestfish.pod:1058 ../test-tool/libguestfs-test-tool.pod:115 ../fuse/guestmount.pod:244 msgid "AUTHORS" msgstr "" # type: textblock -#: ../src/guestfs.pod:2147 ../fish/guestfish.pod:1060 ../test-tool/libguestfs-test-tool.pod:117 ../fuse/guestmount.pod:246 +#: ../src/guestfs.pod:2149 ../fish/guestfish.pod:1060 ../test-tool/libguestfs-test-tool.pod:117 ../fuse/guestmount.pod:246 msgid "Richard W.M. Jones (C)" msgstr "" # type: =head1 -#: ../src/guestfs.pod:2149 ../fish/guestfish.pod:1062 ../test-tool/libguestfs-test-tool.pod:119 ../fuse/guestmount.pod:248 ../tools/virt-edit.pl:366 ../tools/virt-win-reg.pl:514 ../tools/virt-df.pl:653 ../tools/virt-resize.pl:1510 ../tools/virt-list-filesystems.pl:206 ../tools/virt-tar.pl:296 ../tools/virt-rescue.pl:281 ../tools/virt-make-fs.pl:563 ../tools/virt-list-partitions.pl:273 +#: ../src/guestfs.pod:2151 ../fish/guestfish.pod:1062 ../test-tool/libguestfs-test-tool.pod:119 ../fuse/guestmount.pod:248 ../tools/virt-edit.pl:366 ../tools/virt-win-reg.pl:514 ../tools/virt-df.pl:653 ../tools/virt-resize.pl:1510 ../tools/virt-list-filesystems.pl:206 ../tools/virt-tar.pl:296 ../tools/virt-rescue.pl:281 ../tools/virt-make-fs.pl:563 ../tools/virt-list-partitions.pl:273 msgid "COPYRIGHT" msgstr "" # type: textblock -#: ../src/guestfs.pod:2151 ../fish/guestfish.pod:1064 ../fuse/guestmount.pod:250 +#: ../src/guestfs.pod:2153 ../fish/guestfish.pod:1064 ../fuse/guestmount.pod:250 msgid "Copyright (C) 2009-2010 Red Hat Inc. L" msgstr "" # type: textblock -#: ../src/guestfs.pod:2154 +#: ../src/guestfs.pod:2156 msgid "" "This library is free software; you can redistribute it and/or modify it " "under the terms of the GNU Lesser General Public License as published by the " @@ -4101,7 +4098,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2159 +#: ../src/guestfs.pod:2161 msgid "" "This library is distributed in the hope that it will be useful, but WITHOUT " "ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or " @@ -4110,7 +4107,7 @@ msgid "" msgstr "" # type: textblock -#: ../src/guestfs.pod:2164 +#: ../src/guestfs.pod:2166 msgid "" "You should have received a copy of the GNU Lesser General Public License " "along with this library; if not, write to the Free Software Foundation, " diff --git a/po/es.po b/po/es.po index cd84906..5f5ebf3 100644 --- a/po/es.po +++ b/po/es.po @@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: libguestfs.master\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: \n" "Last-Translator: Héctor Daniel Cabrera \n" "Language-Team: Fedora Spanish \n" @@ -80,13 +80,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: opción extensa desconocida: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -117,6 +117,25 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: módulo FUSE para libguestfs\n" +"%s le permite montar un sistema de archivos de máquina virtual\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Utilización:\n" +" %s [--opciones] [-- [--FUSE-opciones]] punto de montaje\n" +"Options:\n" +" -a|--add image Agrega una imagen\n" +" --dir-cache-timeout Define tiempo de espera de readdir cache (por defecto " +"5 sec)\n" +" --fuse-help Muestra opciones FUSE adicionales\n" +" --help Muestra el mensaje de ayuda y finaliza\n" +" -m|--mount dev[:mnt] Monta dev en mnt (si es omitido, /)\n" +" -n|--no-sync No sincroniza automáticamente\n" +" -o|--option opt Transmite opciones extra a FUSE\n" +" -r|--ro Montaje de solo lectura\n" +" --selinux Habilita soporte para SELinux\n" +" --trace Rastrea llamadas API de guestfs API (hacia stderr)\n" +" -v|--verbose Mensajes detallados\n" +" -V|--version Muestra la versión y finaliza\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2667,8 +2686,8 @@ msgstr "libguestfs: error: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2705,17 +2724,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "salida inesperada del comando 'du'" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/gu.po b/po/gu.po index bee4ed8..94cd89d 100644 --- a/po/gu.po +++ b/po/gu.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libguestfs\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-02 13:45+0530\n" "Last-Translator: Sweta Kothari \n" "Language-Team: Gujarati\n" @@ -78,13 +78,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: અજ્ઞાત લાંબો વિકલ્પ: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -115,6 +115,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: libguestfs માટે FUSE મોડ્યુલ\n" +"%s ચાલો તમે વર્ચ્યુઅલ મશીન ફાઇલ સિસ્ટમને માઉન્ટ કરો\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"વપરાશ:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"વિકલ્પો:\n" +" -a|--add image ઇમેજને ઉમેરો\n" +" --dir-cache-timeout readdir કેશ સમયસમાપ્તિને સુયોજિત કરો (મૂળભૂત 5 સેકંડ)\n" +" --fuse-help વધારાનાં FUSE વિકલ્પોને દર્શાવો\n" +" --help મદદ સંદેશને દર્શાવો અને બહાર નીકળો\n" +" -m|--mount dev[:mnt] mnt પર dev ને માઉન્ટ કરો (જો છોડી દીધેલ હોય તો, /)\n" +" -n|--no-sync આપમેળે સુમેળ કરો નહિં\n" +" -o|--option opt FUSE માં વધારાનાં વિકલ્પોને પસાર કરોશાવો\n" +" -r|--ro ફક્ત વંચાય તેવાને માઉન્ટ કરોonly\n" +" --selinux ble SELiઆધારને સક્રિય કરોport\n" +" --trace gce guestfs કોલોને ટ્રેસ કરોal(to st માટેderr)\n" +" -v|--verbose વર્બોસ સંદેશાઓages\n" +" -V|--version આવૃત્તિને દર્શાવોsઅને બહાર નીકળોexit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2593,8 +2611,8 @@ msgstr "libguestfs: ભૂલ: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2629,17 +2647,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "ફાઇલનો અનિચ્છનીય અંત જ્યારે ડિમન માંથી વાંચી રહ્યા હોય" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/hi.po b/po/hi.po index edd22e1..ab74f9c 100644 --- a/po/hi.po +++ b/po/hi.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libguestfs.master.libguestfs\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-16 12:57+0530\n" "Last-Translator: Rajesh Ranjan \n" "Language-Team: Hindi \n" @@ -81,13 +81,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: unknown long option: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -118,6 +118,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: FUSE module for libguestfs\n" +"%s lets you mount a virtual machine filesystem\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Usage:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"Options:\n" +" -a|--add image Add image\n" +" --dir-cache-timeout Set readdir cache timeout (default 5 sec)\n" +" --fuse-help Display extra FUSE options\n" +" --help Display help message and exit\n" +" -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" +" -n|--no-sync Don't autosync\n" +" -o|--option opt Pass extra option to FUSE\n" +" -r|--ro Mount read-only\n" +" --selinux Enable SELinux support\n" +" --trace Trace guestfs API calls (to stderr)\n" +" -v|--verbose Verbose messages\n" +" -V|--version Display version and exit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2596,8 +2614,8 @@ msgstr "libguestfs: error: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2632,17 +2650,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "डेमॉन से पढ़ने के दौरान फाइल का अप्रत्याशित अंत" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/kn.po b/po/kn.po index 7b01965..4e8ddb9 100644 --- a/po/kn.po +++ b/po/kn.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libguestfs 1.0.83\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-24 11:56+0530\n" "Last-Translator: Shankar Prasad \n" "Language-Team: kn-IN <>\n" @@ -78,13 +78,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: ಗೊತ್ತಿರದ ಉದ್ದನೆಯ ಆಯ್ಕೆ: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -115,6 +115,25 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: libguestfs ಗಾಗಿನ FUSE ಘಟಕ\n" +"%s ಎನ್ನುವುದು ವರ್ಚುವಲ್ ಕಡತವ್ಯವಸ್ಥೆಯನ್ನು ಆರೋಹಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ\n" +"ಹಕ್ಕು (C) 2009 Red Hat Inc.\n" +"ಬಳಕೆ:\n" +" %s [--options] [-- [--FUSE-options]] ಆರೋಹಣಾತಾಣ\n" +"ಆಯ್ಕೆಗಳು:\n" +" -a|--add image ಚಿತ್ರಿಕೆಯನ್ನು ಸೇರಿಸಿ\n" +" --dir-cache-timeout readdir ಕ್ಯಾಶೆ ಕಾಲಾವಧಿಯನ್ನು ಹೊಂದಿಸಿ (ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ 5 " +"ಸೆಕೆಂಡು)\n" +" --fuse-help ಹೆಚ್ಚುವರಿ FUSE ಆಯ್ಕೆಗಳನ್ನು ತೋರಿಸು\n" +" --help ನೆರವಿನ ಸಂದೇಶವನ್ನು ತೋರಿಸಿ ನಿರ್ಗಮಿಸು\n" +" -m|--mount dev[:mnt] dev ಅನ್ನು mnt ಯಲ್ಲಿ ಆರೋಹಿಸು (ಹಾಗೆಯೆ ಬಿಟ್ಟಲ್ಲಿ, /)\n" +" -n|--no-sync ಸ್ವಯಂಮೇಳೈಕೆ ಮಾಡಬೇಡ\n" +" -o|--option opt FUSE ಗೆ ಹೆಚ್ಚುವರಿ ಆಯ್ಕೆಗಳನ್ನು ಒದಗಿಸು\n" +" -r|--ro ಓದಲು ಮಾತ್ರವಾಗಿರುವಂತೆ ಆರೋಹಿಸು\n" +" --selinux SELinux ಬೆಂಬಲವನ್ನು ಶಕ್ತಗೊಳಿಸು\n" +" --trace guestfs API ಕರೆಗಳ ಜಾಡನ್ನು ಇರಿಸು (stderr ಗೆ)\n" +" -v|--verbose ವರ್ಬೋಸ್ ಸಂದೇಶಗಳು\n" +" -V|--version ಆವೃತ್ತಿಯನ್ನು ತೋರಿಸಿ ನಿರ್ಗಮಿಸು\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2603,8 +2622,8 @@ msgstr "libguestfs: ದೋಷ: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2639,17 +2658,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "ಡೀಮನ್‌ನಿಂದ ಓದುವಾಗ ಕಡತದ ಅನಿರೀಕ್ಷಿತ ಅಂತ್ಯವು ಕಂಡುಬಂದಿಲ್ಲ" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/libguestfs.pot b/po/libguestfs.pot index 4b818ac..3480359 100644 --- a/po/libguestfs.pot +++ b/po/libguestfs.pot @@ -6,10 +6,10 @@ #, fuzzy msgid "" msgstr "" -"Project-Id-Version: libguestfs 1.7.12\n" +"Project-Id-Version: libguestfs 1.7.13\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -64,8 +64,8 @@ msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -2416,8 +2416,8 @@ msgstr "" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2451,16 +2451,16 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 msgid "unexpected end of output from db_dump command" msgstr "" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/ml.po b/po/ml.po index ca850d5..283fefa 100644 --- a/po/ml.po +++ b/po/ml.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libguestfs.master.libguestfs.ml\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-02 18:35+0530\n" "Last-Translator: Ani Peter | അനി പീറ്റര്‍ \n" "Language-Team: Swathanthra Malayalam Computing | സ്വതന്ത്ര മലയാളം കമ്പ്യൂട്ടിങ് " msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2634,17 +2652,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "ഡെമണില്‍ നിന്നും വായിക്കുമ്പോള്‍ അപ്രതീക്ഷിതമായി ഫയല്‍ അവസാനിച്ചിരിക്കുന്നു" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/mr.po b/po/mr.po index 802de62..51b6888 100644 --- a/po/mr.po +++ b/po/mr.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: mr\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-03 19:10+0530\n" "Last-Translator: Sandeep Shedmake \n" "Language-Team: Marathi \n" @@ -78,13 +78,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: अपरिचीत लाँग पर्याय: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -115,6 +115,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: FUSE module for libguestfs\n" +"%s lets you mount a virtual machine filesystem\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Usage:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"Options:\n" +" -a|--add image Add image\n" +" --dir-cache-timeout Set readdir cache timeout (default 5 sec)\n" +" --fuse-help Display extra FUSE options\n" +" --help Display help message and exit\n" +" -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" +" -n|--no-sync Don't autosync\n" +" -o|--option opt Pass extra option to FUSE\n" +" -r|--ro Mount read-only\n" +" --selinux Enable SELinux support\n" +" --trace Trace guestfs API calls (to stderr)\n" +" -v|--verbose Verbose messages\n" +" -V|--version Display version and exit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2593,8 +2611,8 @@ msgstr "libguestfs: त्रुटी: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2629,17 +2647,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "डिमन पासून वाचतेवेळी फाइल अनपेक्षीतपणे समाप्त झाले" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/nl.po b/po/nl.po index 5286c24..bb72988 100644 --- a/po/nl.po +++ b/po/nl.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libguestfs 1.5.4\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-09-02 15:28+0200\n" "Last-Translator: Geert Warrink \n" "Language-Team: Fedora\n" @@ -77,13 +77,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: onbekende lange optie: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -114,6 +114,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: FUSE module voor libguestfs\n" +"%s laat je een virtuele machine bestandssysteem aankoppelen\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Gebruik:\n" +" %s [--opties] [-- [--FUSE-opties]] koppelpunt\n" +"Opties:\n" +" -a|--add image Voeg image toe\n" +" --dir-cache-timeout Stel readdir cache time-out in (standaard 5 sec)\n" +" --fuse-help Laat extra FUSE opties zien\n" +" --help Laat hulp boodschap zien en sluit af\n" +" -m|--mount dev[:mnt] Koppel dev aan op mnt (indien weggelaten, /)\n" +" -n|--no-sync Geen autosync\n" +" -o|--option opt Geeft optie door aan FUSE\n" +" -r|--ro Alleez-lezen aankoppelen\n" +" --selinux Zet SELinux ondersteuning aan\n" +" --trace Ga guestfs API aanroepen na (naar stderr)\n" +" -v|--verbose Breedsprakige boodschappen\n" +" -V|--version Laat versie zien en sluit af\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2627,8 +2645,8 @@ msgstr "libguestfs: foutr: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2664,17 +2682,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "onverwachte output van 'du' commando" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/or.po b/po/or.po index 0162448..5129c3e 100644 --- a/po/or.po +++ b/po/or.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libguestfs.master.or\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-02-01 18:17+0530\n" "Last-Translator: Manoj Kumar Giri \n" "Language-Team: Oriya \n" @@ -81,13 +81,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: ଅଜଣା ଲମ୍ବା ବିକଳ୍ପ: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -118,6 +118,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: libguestfs ପାଇଁ FUSE ଏକକାଂଶ\n" +"%s ଆପଣଙ୍କୁ ଗୋଟିଏ ଆଭାସୀ ଯନ୍ତ୍ର ଫାଇଲତନ୍ତ୍ରକୁ ସ୍ଥାପନ କରିବାକୁ ଦେଇଥାଏ\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"ଉପଯୋଗୀତା:\n" +" %s [--options] [-- [--FUSE-options]] ସ୍ଥାପନ ବିନ୍ଦୁ\n" +"ବିକଳ୍ପଗୁଡ଼ିକ:\n" +" -a|--add image ପ୍ରତିଛବି ଯୋଗକରନ୍ତୁ\n" +" --dir-cache-timeout readdir କ୍ୟାଶେ ସମୟ ସମାପ୍ତି (ପୂର୍ବନିର୍ଦ୍ଧାରିତ 5 ସେକଣ୍ଡ)\n" +" --fuse-help ଅତିରିକ୍ତ FUSE ବିକଳ୍ପଗୁଡ଼ିକୁ ଦର୍ଶାନ୍ତୁ\n" +" --help ସହାୟତା ସନ୍ଦେଶକୁ ଦର୍ଶାନ୍ତୁ ଏବଂ ପ୍ରସ୍ଥାନ କରନ୍ତୁ\n" +" -m|--mount dev[:mnt] dev କୁ mnt ଉପରେ ସ୍ଥାପନ କରନ୍ତୁ (ଯଦି ଛାଡ଼ିଦିଆଯାଏ, /)\n" +" -n|--no-sync autosync କରନ୍ତୁ ନାହିଁ\n" +" -o|--option opt FUSE ମଧ୍ଯକୁ ଅତିରିକ୍ତ ବିକଳ୍ପ ପାସ କରନ୍ତୁ\n" +" -r|--ro କେବଳ-ପଠନୀୟକୁ ସ୍ଥାପନ କରନ୍ତୁ\n" +" --selinux SELinux ସମର୍ଥନକୁ ସକ୍ରିୟ କରନ୍ତୁ\n" +" --trace guestfs API ଡାକକୁ ଅନୁସରଣ କରନ୍ତୁ (stderr କୁ)\n" +" -v|--verbose ଭର୍ବୋଜ ସନ୍ଦେଶଗୁଡ଼ିକ\n" +" -V|--version ସଂସ୍କରଣ ଦର୍ଶାନ୍ତୁ ଏବଂ ପ୍ରସ୍ଥାନ କରନ୍ତୁ\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2598,8 +2616,8 @@ msgstr "libguestfs: ତ୍ରୁଟି: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2634,17 +2652,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "ଫାଇଲର ଅପ୍ରତ୍ୟାଶିତ ସମାପ୍ତି ଯେତେବେଳେ ଡେମନରୁ ପଢ଼ୁଅଛି" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/pa.po b/po/pa.po index c2bfb9e..33b2143 100644 --- a/po/pa.po +++ b/po/pa.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libguestfs 1.0.81\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-01-29 12:50+0530\n" "Last-Translator: Jaswinder Singh \n" "Language-Team: Punjabi/Panjabi \n" @@ -77,13 +77,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: unknown long option: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -114,6 +114,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: FUSE module for libguestfs\n" +"%s lets you mount a virtual machine filesystem\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Usage:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"Options:\n" +" -a|--add image Add image\n" +" --dir-cache-timeout Set readdir cache timeout (default 5 sec)\n" +" --fuse-help Display extra FUSE options\n" +" --help Display help message and exit\n" +" -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" +" -n|--no-sync Don't autosync\n" +" -o|--option opt Pass extra option to FUSE\n" +" -r|--ro Mount read-only\n" +" --selinux Enable SELinux support\n" +" --trace Trace guestfs API calls (to stderr)\n" +" -v|--verbose Verbose messages\n" +" -V|--version Display version and exit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2596,8 +2614,8 @@ msgstr "libguestfs: error: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2632,17 +2650,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "ਡੈਮਨ ਤੋਂ ਪੜਨ ਸਮੇਂ ਅਚਾਨਕ ਫਾਇਲ ਅੰਤ" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/pl.po b/po/pl.po index 1bdc470..5c1c737 100644 --- a/po/pl.po +++ b/po/pl.po @@ -6,7 +6,7 @@ msgstr "" "Project-Id-Version: pl\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-10-23 13:41+0200\n" "Last-Translator: Piotr Drąg \n" "Language-Team: Polish \n" @@ -78,13 +78,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: nieznana długa opcja: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -115,6 +115,28 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: moduł FUSE dla biblioteki libguestfs\n" +"%s umożliwia zamontowanie systemu plików maszyny wirtualnej\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Użycie:\n" +" %s [--opcje] [-- [--opcje-FUSE]] punkt_montowania\n" +"Opcje:\n" +" -a|--add image Dodaje obraz\n" +" --dir-cache-timeout Ustawia czas oczekiwania na pamięć podręczną\n" +" odczytania katalogu (domyślnie pięć sekund)\n" +" --fuse-help Wyświetla dodatkowe opcje FUSE\n" +" --format[=raw|..] Wymusza format dysku dla opcji -a\n" +" --fuse-help Wyświetla dodatkowe opcje FUSE\n" +" --help Wyświetla komunikat pomocy i kończy działanie\n" +" -m|--mount dev[:mnt] Montuje dev w mnt (jeśli pominięto, w /)\n" +" -n|--no-sync Nie synchronizuje automatycznie\n" +" -o|--option opt Przekazuje dodatkowe opcje do FUSE\n" +" -r|--ro Montuje w trybie tylko do odczytu\n" +" --selinux Włącza obsługę SELinuksa\n" +" --trace Śledzi wywołania API biblioteki guestfs (do\n" +" standardowego wyjścia błędów)\n" +" -v|--verbose Wyświetla więcej komunikatów\n" +" -V|--version Wyświetla wersję i kończy działanie\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2643,8 +2665,8 @@ msgstr "libguestfs: błąd: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2681,17 +2703,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "nieoczekiwane wyjście polecenia \"du\"" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/ta.po b/po/ta.po index a65e764..31c7596 100644 --- a/po/ta.po +++ b/po/ta.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: libguestfs 1.0.81\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-01-29 13:38+0530\n" "Last-Translator: I. Felix \n" "Language-Team: ta_IN \n" @@ -77,13 +77,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: தெரியாத நீண்ட விருப்பம்: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -114,6 +114,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: FUSE module for libguestfs\n" +"%s lets you mount a virtual machine filesystem\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"Usage:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"Options:\n" +" -a|--add image Add image\n" +" --dir-cache-timeout Set readdir cache timeout (default 5 sec)\n" +" --fuse-help Display extra FUSE options\n" +" --help Display help message and exit\n" +" -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" +" -n|--no-sync Don't autosync\n" +" -o|--option opt Pass extra option to FUSE\n" +" -r|--ro Mount read-only\n" +" --selinux Enable SELinux support\n" +" --trace Trace guestfs API calls (to stderr)\n" +" -v|--verbose Verbose messages\n" +" -V|--version Display version and exit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2599,8 +2617,8 @@ msgstr "libguestfs: error: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2635,17 +2653,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "unexpected end of file when reading from daemon" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" diff --git a/po/te.po b/po/te.po index 830c5a2..903b340 100644 --- a/po/te.po +++ b/po/te.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: libguestfs.master.libguestfs\n" "Report-Msgid-Bugs-To: https://bugzilla.redhat.com/enter_bug.cgi?" "component=libguestfs&product=Virtualization+Tools\n" -"POT-Creation-Date: 2010-11-23 10:16+0000\n" +"POT-Creation-Date: 2010-11-24 20:19+0000\n" "PO-Revision-Date: 2010-01-27 20:03+0530\n" "Last-Translator: Krishna Babu K \n" "Language-Team: Telugu \n" @@ -79,13 +79,13 @@ msgid "%s: unknown long option: %s (%d)\n" msgstr "%s: తెలియని long ఐచ్చికము: %s (%d)\n" #: cat/virt-filesystems.c:90 -#, c-format +#, fuzzy, c-format msgid "" "%s: list filesystems, partitions, block devices, LVM in a VM\n" "Copyright (C) 2010 Red Hat Inc.\n" "Usage:\n" -" %s [--options] -d domname file\n" -" %s [--options] -a disk.img [-a disk.img ...] file\n" +" %s [--options] -d domname\n" +" %s [--options] -a disk.img [-a disk.img ...]\n" "Options:\n" " -a|--add image Add image\n" " --all Display everything\n" @@ -116,6 +116,24 @@ msgid "" " -x Trace libguestfs API calls\n" "For more information, see the manpage %s(1).\n" msgstr "" +"%s: libguestfs కొరకు FUSE మాడ్యూల్\n" +"%s మిమ్ములను వర్చ్యువల్ మిషన్ ఫైల్‌సిస్టమ్‌ను మౌంట్ చేయనిస్తుంది\n" +"Copyright (C) 2009 Red Hat Inc.\n" +"వినియోగం:\n" +" %s [--options] [-- [--FUSE-options]] mountpoint\n" +"Options:\n" +" -a|--add image Add image\n" +" --dir-cache-timeout Set readdir cache timeout (default 5 sec)\n" +" --fuse-help Display extra FUSE options\n" +" --help Display help message and exit\n" +" -m|--mount dev[:mnt] Mount dev on mnt (if omitted, /)\n" +" -n|--no-sync Don't autosync\n" +" -o|--option opt Pass extra option to FUSE\n" +" -r|--ro Mount read-only\n" +" --selinux Enable SELinux support\n" +" --trace Trace guestfs API calls (to stderr)\n" +" -v|--verbose Verbose messages\n" +" -V|--version Display version and exit\n" #: cat/virt-filesystems.c:304 #, fuzzy, c-format @@ -2597,8 +2615,8 @@ msgstr "libguestfs: దోషము: %s\n" msgid "" msgstr "" -#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2127 src/inspect.c:2170 -#: src/inspect.c:2220 +#: src/inspect.c:421 src/inspect.c:761 src/inspect.c:2133 src/inspect.c:2176 +#: src/inspect.c:2226 #, c-format msgid "size of %s is unreasonably large (% bytes)" msgstr "" @@ -2633,17 +2651,17 @@ msgstr "" msgid "not a Windows guest, or systemroot could not be determined" msgstr "" -#: src/inspect.c:1761 src/inspect.c:1783 src/inspect.c:1808 +#: src/inspect.c:1766 src/inspect.c:1788 src/inspect.c:1813 #, fuzzy msgid "unexpected end of output from db_dump command" msgstr "డెమోన్‌నుండి చదువునప్పుడు అనుకోని ఫైలు ముగింపు" -#: src/inspect.c:2229 +#: src/inspect.c:2235 #, c-format msgid "%s: file is empty" msgstr "" -#: src/inspect.c:2246 +#: src/inspect.c:2252 msgid "" "inspection API not available since this version of libguestfs was compiled " "without PCRE or hivex libraries" -- 1.8.3.1