generator: Implement BufferIn parameter type (RHBZ#501889).
[libguestfs.git] / TODO
diff --git a/TODO b/TODO
index 13d2cfa..2209619 100644 (file)
--- a/TODO
+++ b/TODO
@@ -17,15 +17,6 @@ IDs and the host.  It's not easy to automate this because you need
 extra details about the guest itself in order to get to its
 UID->username map (eg. /etc/passwd from the guest).
 
 extra details about the guest itself in order to get to its
 UID->username map (eg. /etc/passwd from the guest).
 
-BufferIn
---------
-
-BufferIn should turn into <char *, int> and simple strings in other
-languages that can handle 8 bit clean strings.
-
-Limit on transfers would still be 2MB for these types.
- - then implement write-file properly
-
 febootstrap / debootstrap inside appliance
 ------------------------------------------
 
 febootstrap / debootstrap inside appliance
 ------------------------------------------
 
@@ -94,23 +85,6 @@ This is mainly useful from live CDs, ie. virt-p2v.
 Should we bother having the daemon at all and just link the guestfsd
 code directly into libguestfs?
 
 Should we bother having the daemon at all and just link the guestfsd
 code directly into libguestfs?
 
-PPC problems
-------------
-
-[This section should be filed as bugs, but no one seems to care for
-PPC hosts and the hardware is rapidly becoming obsolete]
-
-  ppc (32 bit) works with qemu from git, however there is no serial console
-
-  ppc64 requires extra parameters:
-    -M mac99 -cpu ppc64
-  however it still fails:
-    invalid/unsupported opcode: 01 - 01 - 1a (06301e83) 00000000018c2738 1
-    invalid bits: 00400000 for opcode: 0b - 19 - 15 (2d746572) 0000000000009230
-
-  no serial console in ppc or ppc64 because no one can tell us what
-  console=ttyXX option to use
-
 Supermin appliance to febootstrap
 ---------------------------------
 
 Supermin appliance to febootstrap
 ---------------------------------
 
@@ -229,16 +203,6 @@ ntfsclone
 Useful imaging tool:
 http://man.linux-ntfs.org/ntfsclone.8.html
 
 Useful imaging tool:
 http://man.linux-ntfs.org/ntfsclone.8.html
 
-Standard images
----------------
-
-Equip guestfish with some standard images that it can load
-quickly, eg:
-
-  load ext2
-
-Maybe it's better to create these on the fly?
-
 virt-rescue pty
 ---------------
 
 virt-rescue pty
 ---------------
 
@@ -249,25 +213,12 @@ http://www.perlmonks.org/index.pl?node_id=582185
 Note that pty requires cooperation inside the C code too (there are
 two sides to a pty, and one has to be handled after the fork).
 
 Note that pty requires cooperation inside the C code too (there are
 two sides to a pty, and one has to be handled after the fork).
 
-virt-rescue TERM
-----------------
-
-Pass TERM from the library, through the kernel command line, to the
-init script.
-
 Windows-based daemon/appliance
 ------------------------------
 
 See discussion on list:
 https://www.redhat.com/archives/libguestfs/2009-November/msg00165.html
 
 Windows-based daemon/appliance
 ------------------------------
 
 See discussion on list:
 https://www.redhat.com/archives/libguestfs/2009-November/msg00165.html
 
-virt-grow, virt-shrink
-----------------------
-
-Grow and shrink existing guests.  The main problem comes with
-MBR-style partitions where you have to actually copy data around the
-disk (unless you only want to change the final partition).
-
 qemu locking
 ------------
 
 qemu locking
 ------------
 
@@ -288,4 +239,55 @@ anything in a disk image.
 
 However this won't work easily for VM disk images in the disk image.
 One would have to download those to the host and launch another
 
 However this won't work easily for VM disk images in the disk image.
 One would have to download those to the host and launch another
-libguestfs instance.
\ No newline at end of file
+libguestfs instance.
+
+List, mount filesystems by UUID and label
+-----------------------------------------
+
+[See related:
+http://www.redhat.com/archives/libguestfs/2009-August/msg00031.html]
+
+List filesystems by UUID or label.
+
+Mount filesystems by UUID or label.  (I'm not really sure if we can do
+this at the moment but we ought to be able to do it, and perhaps make
+it easier by having a direct command).
+
+Map filesystems to disk blocks
+------------------------------
+
+Map files/filesystems/(any other object) to the actual disk
+blocks they occupy.
+
+And vice versa.
+
+Is it even possible?
+
+Integration with host intrusion systems
+---------------------------------------
+
+Perfect way to monitor VMs from outside the VM.  Look for file
+hashes, log events, login/logout etc.
+
+http://www.ossec.net/
+http://la-samhna.de/samhain/
+http://sourceforge.net/projects/aide/
+http://osiris.shmoo.com/
+http://sourceforge.net/projects/tripwire/
+
+Resizing, shrinking, specifying sizes in guestfish
+--------------------------------------------------
+
+Owing to an oversight we don't really supporting shrinking
+filesystems.  See:
+
+https://bugzilla.redhat.com/show_bug.cgi?id=585221
+https://bugzilla.redhat.com/show_bug.cgi?id=585222
+https://bugzilla.redhat.com/show_bug.cgi?id=585223
+
+But a related problem is how to specify sizes to guestfish, ie. "100M"
+or "1G".  Currently the specific alloc and sparse functions contain
+code to parse these size strings, but that cannot be used anywhere
+else that would take a byte count.  This is awkward because some
+commands take units of megabytes (lvresize, sfdiskM) or sectors
+(part-add), with no unifying theme.