X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=TODO;h=a76fd2e10799331a7b765ae05c62bf106ba52bd8;hp=6e69319d379cf7bcdca3d2aebf6685776509edb1;hb=4accf3197235300029d04d0ab637b66eaaf9f8df;hpb=977b61c5257876706218d72afe197c77cea6e6b8 diff --git a/TODO b/TODO index 6e69319..a76fd2e 100644 --- a/TODO +++ b/TODO @@ -441,23 +441,6 @@ More inspection features - last user who logged in - lastlog, last, who -Get the guest icon ------------------- - -- For Linux guests, use /etc/favicon.png if available, else get it in - a distro-specific manner. -- For Windows guests, parse it out of c:\windows\explorer.exe - -Integrate event log parsing more closely ----------------------------------------- - -https://rwmj.wordpress.com/2011/04/17/decoding-the-windows-event-log-using-guestfish/ - -We should at least make sure the tools are packaged up for Fedora. We -could document formally how to do event log parsing. Also the above -only works for Windows Vista and later (since the log format changed), -so we could extend this to work for earlier versions. - Integrate virt-inspector with CMDBs ----------------------------------- @@ -468,7 +451,62 @@ standards for CMDBs come from the DMTF, see eg: http://dmtf.org/news/pr/2009/7/dmtf-releases-cmdbf-standard-federating-configuration-management-data -See if qemu -machine option can be used to select KVM, TCG acceleration ------------------------------------------------------------------------ +Efficient way to visit all files +-------------------------------- + +https://rwmj.wordpress.com/2010/12/15/tip-audit-virtual-machine-for-setuid-files/#content + +A naive method would look like: + + g#visit ~return_stats:true "/" ( + fun pathname stat -> + ... + ) + +However this has two disadvantages: + + - requires hand-written custom bindings in each language + - unclear about locking, thread-safety and re-entrancy of handle g + +A better way would be to have some sort of explicit "download all +filenames and stat structures", which could then be iterated over: + + let files = g#find_opts ~return_stats:true "/" in + List.iter ( + fun pathname stat -> + ... + ) + +The problem with this is that 'files' is going to be larger than a +protocol buffer. + +This leads to thinking about changes to the protocol / generator to +make this simpler. The proposal would be to add RBigStringList, +RBigStructList [or RBig (Ranytype ...)]. These would work like +FileOut, in that they would use file streaming to stream XDR +structures (probably written to a file on the library side). +Generated code would hide most of the implementation. + +We also need to think about security issues: is it possible for the +daemon to keep sending back data forever, and if so what happens on +the library side. + +[Users can now use virt-ls to solve some of these problems, but it is +not a general solution at the API level] + +Interactive disk creator +------------------------ + +An interactive disk creator program. + +Attach method for disconnected operation +---------------------------------------- + +http://libguestfs.org/guestfs.3.html#guestfs_set_attach_method + +"Librarian" has an idea that he should be able to attach to a regular +appliance, but disconnect from it and reconnect to it later. This +would be some sort of modified attach method (see link above). -See upstream qemu commit 303d4e865b74402b49f52e975c396c952f063e58 +The complexity here is that we would no longer have access to +stdin/stdout (or we'd have to direct that somewhere else).