summaryrefslogtreecommitdiff
path: root/TODO
AgeCommit message (Collapse)AuthorFilesLines
2013-05-04TODO: Remove done and obsolete itemsRoger Leigh1-9/+0
2012-06-25TODO: Document setup variablesRoger Leigh1-0/+2
2010-07-11TODO: Remove completed namespace workRoger Leigh1-12/+1
2010-06-26sbuild: Move verbosity from auth to chroot and sessionRoger Leigh1-4/+0
Add message-verbosity configuration key.
2010-06-06TODO: Document issues with host filesystems in chrootRoger Leigh1-0/+5
2009-11-07TODO: Remove completed itemsRoger Leigh1-10/+0
2009-09-27sbuild: Add reentrant passwd and group wrappersRoger Leigh1-4/+0
In order to make the library thread-safe, use the reentrant getpw*_r and getgr*_r functions in place of the older unsafe functions which use static buffers. The passwd and group structures are inherited by C++ classes of the same name which allow handling of dynamic memory allocation while at the same time allowing use of RAII and passing to C functions.
2009-08-08TODO: Distinguish between chroot, source and sessionRoger Leigh1-0/+6
2009-08-04TODO: Remove done and add pending changesRoger Leigh1-24/+7
2009-07-30sbuild::chroot_source: Reimplement as facetsRoger Leigh1-0/+4
Split into two facets, chroot_facet_source_clonable (for chroots providing clone_source functionality) and chroot_facet_source (for the resulting clone). This separation means that a single class doesn't need to cater for two essentially separate uses. The ability to list the installed facets, and name each facet for human consumption has been added.
2009-07-11[TODO] Remove virtual inheritanceRoger Leigh1-0/+3
2009-06-30[TODO] Add enum |= and &= operatorsRoger Leigh1-0/+5
2009-06-28[TODO] Add union itemsRoger Leigh1-0/+33
2009-06-28[sbuild::chroot_union] Rework union mountsRoger Leigh1-0/+3
Rename from fs_union to union. Make configuration options more user friendly. Update documentation to be more clear.
2009-05-12[TODO] Remove completed basic_keyfile string_list removalRoger Leigh1-2/+0
2009-05-04[TODO] Add cleanup items for union and file chrootsRoger Leigh1-0/+10
2009-05-03[TODO] Add new itemsRoger Leigh1-0/+8
2008-04-27[schroot] Read additional configuration from /etc/schroot/chroot.d.Roger Leigh1-0/+2
2008-01-26* TODO: Add logging items.Roger Leigh1-0/+13
2008-01-20* TODO: Remove completed item.Roger Leigh1-8/+1
2008-01-20* TODO: Add extra chroot checks.Roger Leigh1-0/+4
2008-01-19* bin/schroot/schroot-setup.5.in: Replace 20network and 30passwdRoger Leigh1-4/+0
with 20copyfiles. * bin/schroot/setup/Makefile.am (setup_SCRIPTS): Remove 20network and 30passwd, and add 20copyfiles. * bin/schroot/setup/30passwd: Remove. * bin/schroot/setup/20copyfiles: Move from 20network. Read COPYFILES file, and copy files into chroot. * bin/schroot/script-defaults: Add COPYFILES. * bin/schroot/copyfiles-defaults: New file. Files to copy into the chroot. * debian/schroot.preinst: Add rm_conffile function to remove /etc/schroot/setup.d/20network and /etc/schroot/setup.d/30passwd for versions prior to this. These are replaced by /etc/schroot/setup.d/20copyfiles.
2008-01-18* TODO: Add script merge item.Roger Leigh1-0/+5
2008-01-17* TODO: Remove completed item.Roger Leigh1-2/+0
* bin/schroot-mount/schroot-mount-main.cc: Ensure fstab fs_dir has a leading /.
2008-01-16* TODO: Remove mntstream porting; add mount checking.Roger Leigh1-3/+2
2008-01-15* TODO: Document string_list issue in basic-keyfile.Roger Leigh1-0/+2
2008-01-12* TODO: Add script item.Roger Leigh1-0/+1
2008-01-09* TODO: Add new items.Roger Leigh1-0/+5
2007-07-08* TODO: Add permissions check items.Roger Leigh1-0/+11
2007-05-02* Version 1.1.1.release/schroot-1.1.1Roger Leigh1-7/+0
* debian/changelog: Update for 1.1.1. * NEWS: Document new environment variables set inside the chroot. * TODO: Remove completed SCHROOT_USER item.
2007-04-25* NEWS: Document the environment-filter key.Roger Leigh1-0/+3
* bin/schroot/schroot.conf.5.in: Document the environment-filter key. * bin/schroot/schroot.1.in (list): Document environment variables being set, and configuration of environment filtering. * sbuild/sbuild-session.cc (run_child): Set SCHROOT_COMMAND, SCHROOT_USER, SCHROOT_GROUP, SCHROOT_UID and SCHROOT_GID environment variables, equivalent to SUDO_* variables of the same name (except for SUDO_GROUP, which does not exist). * sbuild/sbuild-auth.cc (auth): Initialise rgid and rgroup members from group database. (get_rgid): New member function to get rgid. * sbuild/sbuild-auth.h: Add GROUP error_code and rgid and rgroup class members.
2006-08-25* Version 1.1.0release/schroot-1.1.0Roger Leigh1-6/+1
* debian/changelog: Update for 1.1.0 * TODO: Remove completed item.
2006-07-29* TODO: Add future items.Roger Leigh1-0/+9
* All catch blocks catch const references. * sbuild/sbuild-run-parts.cc (run_child): Handle exceptions thrown in child. * sbuild/sbuild-session.cc (setup_chroot): Handle exceptions thrown in child. * Replace all uses std::locale("C") with std::locale::classic(). * Replace all uses of NULL with 0. * sbuild/sbuild-auth.cc (auth): Remove redundant auth_conv_tty dynamic_cast. (~auth): Log an error if an exception is caught. (set_user): Default uid and gid to current uid and gid, rather than 0, for extra safety when an error occurs. (run, start): Use reinterpret_cast instead of static_cast when casting void *. (authenticate): Don't leak hostname array if an exception is thrown.
2006-07-20* TODO: Remove completed item (duplictes in conffiles should be anRoger Leigh1-5/+0
error).
2006-07-20* TODO: Remove completed item.Roger Leigh1-4/+0
* Added a number of debugging messages to important codepaths.
2006-07-17* TODO: Remove completed item.Roger Leigh1-5/+0
* po/en_GB.po: Update translation.
2006-07-17* sbuild/sbuild-lock.cc: Rename _RELEASE error codes to _UNLOCKRoger Leigh1-0/+12
and reword error messages to be uniform with chroot error messages. * sbuild/sbuild-chroot-config.cc: Rename CHROOT error to CHROOT_NOTFOUND, to reduce ambiguity.
2006-07-17* TODO: Remove completed item.Roger Leigh1-2/+0
* sbuild/sbuild-chroot.cc (set_persona): Remove method overloaded for a string. (get_keyfile): Use keyfile::set_object_value for the personality. (set_keyfile): Use keyfile::get_object_value for the personality. * sbuild/sbuild-personality.cc: Add a BAD error code for when the personality name is invalid. (get_personalities): Renamed from print_personalities. Create a string, rather than printing to an ostream. * sbuild/sbuild-personality.h: Add stream input operator, to set the personality from a stream. * sbuild/sbuild-keyfile.h: Move all logic in get_object_value into the try block, to catch and report parse errors in T parsing.
2006-07-16* TODO: Remove completed items.Roger Leigh1-9/+0
* All code logging exceptions with log_error() and e.what() use log_exception. * sbuild/sbuild-auth.cc (auth_conv_hook): In the PAM conversation hook, catch and handle any exception thrown by a conversation handler. * sbuild/sbuild-auth-conv-tty.cc (conversation): Rather than returning false on error, throw an exception. Remove exception catching logic; it's now handled in sbuild::auth. * sbuild/sbuild-auth-conv.h (conversation): Rather than returning false on error, throw an exception. * sbuild/sbuild-log.(cc|h) (log_exception): New function. This helper function outputs an exception using log_error(), and exception reasons using log_info(). * sbuild/sbuild-parse-error.h: All constructors add a call for format_reason in addition to format_detail. All detail arguments are templated rather than strings (to allow use of exceptions as detail). * sbuild/sbuild-custom-error.h: All constructors add a call for format_reason in addition to format_detail. * sbuild/sbuild-error.h, sbuild/sbuild-error.tcc: Add error_base class. This contains a reason string with a why() method in addition to the what() method provided by std::exception. error<> derives from error_base, and provides a format_reason helper with similar behaviour to format_detail. Both format_detail and format_reason contain templated helper classes to allow conversion of exceptions of any type, and the transfer of their reason (if any). * configure.ac: Add check for boost/type_traits.hpp.
2006-07-14* TODO: Add remaining items for 1.0.Roger Leigh1-0/+20
2006-07-14* TODO: Remove completed item.Roger Leigh1-2/+0
* schroot/schroot.conf.5.in: Add undocumented features. * schroot/schroot.conf: Add undocumented features.
2006-07-14* TODO: Remove completed item.Roger Leigh1-6/+0
* THANKS: Add Simon Richter. * sbuild/sbuild-session.cc (run_impl): Move session opening and closing here. The session is opened and closed outside the chroot as root.
2006-07-14* TODO: Remove completed item.Roger Leigh1-6/+0
* Update doxygen API reference.
2006-07-14* schroot/schroot.conf.5.in: Minor whitespace cleanup.Roger Leigh1-6/+0
* TODO: Remove completed item. * Updated British English translation. * Apply quoting style to all sources. * HACKING: Document quoting style for format strings.
2006-07-13* TODO: Remove completed error string markup item.Roger Leigh1-6/+0
* Add boost::format markup to error strings. * sbuild/sbuild-custom-error.h: All constructor detail arguments are now templated. Add additional constructors for multiple detail arguments.
2006-07-03* README: Document new Boost build dependency.Roger Leigh1-5/+0
* TODO: Remove completed item. * sbuild/sbuild-session.cc (setup_chroot): Use sbuild::run_parts in place of run-parts(8). * configure.ac: Remove run-parts(8) checks.
2006-06-29* TODO: Remove completed item.Roger Leigh1-6/+0
* sbuild/sbuild-chroot-config.cc (parse_data): Remove exception wrapper, now that sbuild::keyfile throws exceptions containing more detailed information. * sbuild/sbuild-chroot-file.cc (get_file_repack, set_file_repack): New methods to get and set file repack status. * All chroot get_keyfile and set_keyfile methods are implemented in terms of the new keyfile::[gs]et_object_(list_)value methods. * sbuild/sbuild-keyfile.h: Add templated static methods for getting and setting key values and list values using pointers to methods of other objects.
2006-06-28* TODO: Remove completed item.Roger Leigh1-9/+0
* sbuild/sbuild-util.cc (narrow_string, widen_string): Throw a runtime_error on conversion failure.
2006-06-28* TODO: Remove completed items.Roger Leigh1-10/+0
* schroot/schroot-base-main.cc (run): This method takes argc and argv arguments, and calls the option class parse method. It also catches and handles parse exceptions. * schroot/schroot-base-option.cc (parse): Renamed from parse_options, this method now takes argc and argv as arguments and calls all the other class virtual methods to set up and process the options. (add_option_group): New virtual method. The addition of option groups is split out from the parse method. * All option parsing classes have removed the argc and argv arguments from their constructors. The constructors now no longer call any of the virtual methods.
2006-06-26* sbuild/sbuild-session.cc (is_group_member): Rather than exitingRoger Leigh1-5/+0
with failure status, warn and return false, or throw an exception.