Taste the Rainbow:0.7.0

From OLPC
Revision as of 20:20, 3 November 2007 by Ashsong (talk | contribs)
Jump to navigation Jump to search

This page is a guided tour of the source code of the rainbow-0.7.0 release.

Source Code Overview

please start at http://dev.laptop.org/git?p=users/mstone/security;a=tree;f=rainbow;h=b76a41fcc968b22196b14fa868e50db0f4b1b9bc;hb=b6a2a0c96f522956a69871c6d839bc67d2f78424


 rainbow
  |--- conf : installation-time configuration files
  |     \--- session-olpc.conf : applies some unusual dbus rules to allow many uids
  |                              to use the same session bus and enables OLPC-specific 
  |                              dbus access checks. When /etc/olpc-security exists, 
  |                              session-olpc.conf is loaded by /usr/bin/sugar 
  | 
  |--- docs : explanations & notes
  |     |--- README
  |     \--- DESIGN
  |     *--- rainbow.txt
  |
  |--- rainbow : source code
  |     |--- util
  |     |--- stages
  |     |--- targets
  |     \--- service.py
  |
  |--- rainbow.spec.in : spec-file template for building RPMS
  \--- Makefile.package : package-specific variables for use in ../Makefile.fedora
  *--- ../Makefile.fedora : rules for making local snapshot builds and 
                            internal releases, prior to pushing to Fedora


Features

Activity Installation

permissions is a stub that I hope to fill out this weekend based on the secure installation work that marcopg and neuralis did together a few weeks ago

Activity Launching

The key functions for launching activities are

These functions are called in the order listed from

which are, in turn, called from

These six functions (and the relatively simple helpers they call) exhaust the functionality provided by rainbow-0.7.0.