~vorlon/ubuntu/raring/upstart/lp.1199778

  • Committer: James Hunt
  • Date: 2011-06-03 15:24:25 UTC
  • mto: (1182.14.42 upstart)
  • Revision ID: james.hunt@ubuntu.com-20110603152425-3tx2udb8ss1bxrlx
Add session support. Note that there are no automatically runnable and
explicit tests yet. However, see TESTING.sessions.

* TESTING.sessions: ASCII (reStructuredText) document explaining
  how to run manual tests for session support (for chroots).
* dbus/Upstart.conf: Simplified to support allowing users to invoke
  all methods (since Upstart now isolates commands by user).
* init/Makefile.am: Added session.[ch] files.
* init/session.c: New file. Note that session_from_dbus() will disable sessions
  (by returning the NULL session) if environment variable "UPSTART_NO_SESSIONS"
  is set to any value (used by tests).
* init/session.h: New file.
* init/parse_job.h: parse_job(): Add session pointer to prototype.
* init/parse_job.c:
  - parse_job(): Add session parameter.
  - Update calls to job_class_new() to pass session pointer.
* init/job.c: job_new(): Crucial change to ensure chroot sessions have
  a unique D-Bus name (LP:#728531).
* init/job_class.c: 
  - job_class_new(): Add session parameter and session support.
  - job_class_remove(): Add session parameter to prototype.
  - job_class_consider(): Only consider jobs from the appropriate session.
  - job_class_reconsider(): Only consider jobs from the appropriate session.
  - job_class_start(): Disallow out-of-session modification.
  - job_class_stop(): Disallow out-of-session modification.
  - job_class_restart(): Disallow out-of-session modification.
* init/main.c: Add "--no-sessions" command-line option to disable
  sessions and revert to traditional behaviour.
* init/job_class.h: 
  - job_class_new(): Add session pointer to prototype.
  - JobClass: Add session member.
* init/job_process.c: job_process_spawn():
  - Call chroot(2) for chroot sessions.
  - Call setuid(2) for user session jobs.
* init/job.c:
  - job_emit_event(): Set session for event.
  - job_start(): Disallow out-of-session modification.
  - job_stop(): Disallow out-of-session modification.
  - job_restart(): Disallow out-of-session modification.
* init/event.h: Event: Add session member.
* init/event.c:
  - event_new(): initialize session to NULL.
  - event_pending_handle_jobs(): Add session handling.
  - event_finished(): Set session for failure event.
* init/control.c:
  - control_get_job_by_name(): Add session handling.
  - control_get_all_jobs(): Add session handling.
  - control_emit_event(): Add session handling.
* init/conf.c:
  - conf_source_new(): Initialise session to NULL.
  - conf_reload_path(): Pass session to parse_job().
  - conf_select_job(): Add session parameter.
* init/conf.h:
  - ConfSource: Add session member.
  - conf_select_job(): Add session parameter to prototype.
* All tests updated to set "UPSTART_NO_SESSIONS".
Filename Latest Rev Last Changed Committer Comment Size
..
conf 1152 14 years ago Scott James Remnant * conf/control-alt-delete.conf: Default job for Co Diff
contrib 1154 14 years ago Scott James Remnant * contrib/vim/syntax/upstart.vim: Upstart job synt Diff
dbus 946 16 years ago Scott James Remnant * dbus/com.ubuntu.Upstart.xml: Initially empty des Diff
doc 243 17 years ago Scott James Remnant * doc/upstart-logo.svg: Include the logo Alexandre Diff
init 3 18 years ago Scott James Remnant * init/main.c: Add the simplest template main.c * Diff
po 1 18 years ago Scott James Remnant * ChangeLog: Initial project infrastructure create Diff
scripts 1182.25.1 13 years ago James Hunt Addition of initctl2dot script for visualisation. Diff
util 265 17 years ago Scott James Remnant * initctl: Rename to util again, I don't want a se Diff
.bzrignore 1182.1.64 13 years ago Scott James Remnant Ignore TAGS files 855 bytes Diff Download File
AUTHORS 828 16 years ago Scott James Remnant * AUTHORS, logd/jobs.d/logd.in: Update e-mail addr 537 bytes Diff Download File
ChangeLog 1182.9.12 13 years ago James Hunt Add session support. Note that there are no automa 383 KB Diff Download File
configure.ac 1182.25.1 13 years ago James Hunt Addition of initctl2dot script for visualisation. 1.6 KB Diff Download File
COPYING 1124 15 years ago Scott James Remnant * COPYING: Change licence to version 2 of the GNU 17.5 KB Diff Download File
HACKING 1182.1.24 14 years ago Scott James Remnant libnih is now released as its own project, so rath 4.6 KB Diff Download File
Makefile.am 1182.25.1 13 years ago James Hunt Addition of initctl2dot script for visualisation. 174 bytes Diff Download File
NEWS 1182.14.20 13 years ago Scott James Remnant * configure.ac: Bump version to 1.3 * NEWS: Begin 37.3 KB Diff Download File
README 1182.1.55 14 years ago Scott James Remnant * configure.ac: Replace the --with-local-libnih co 1.8 KB Diff Download File
TESTING.sessions 1182.9.12 13 years ago James Hunt Add session support. Note that there are no automa 5.5 KB Diff Download File
TODO 1182.14.3 13 years ago Scott James Remnant * configure.ac, NEWS: Bump version to 1.0 * TODO: 4.9 KB Diff Download File