1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-30 03:40:34 +02:00
guile/examples/safe
Martin Grabmüller 673509f84f * scripts/README, scripts/hello.scm, safe/untrusted.scm,
safe/evil.scm, safe/README, modules/README, modules/main,
	modules/module-0.scm, modules/module-1.scm, modules/module-2.scm:
	Minor cleanup.

	* README: Added intro stuff, restructured a bit.

	* box-dynamic/README, box-module/README, box/README: Cleanup and
	restructuring.

	* box-dynamic-module/box-mixed.scm: New file, demonstrating usage
	of extension library functionality, but without exporting
	procedures from the library.

	Thanks to Thomas Wawrzinek for the idea and example code!

	* box-dynamic-module/box-module.scm: Add comments, export
	make-box, box-ref, box-set!.

	* box-dynamic-module/README: Integrate new module (box-mixed),
	restructure and cleanup a bit.
2001-06-14 20:36:06 +00:00
..
.cvsignore * .cvsignore: here and in all subdirectories listing Makefile and 2001-06-02 04:58:55 +00:00
evil.scm * scripts/README, scripts/hello.scm, safe/untrusted.scm, 2001-06-14 20:36:06 +00:00
Makefile.am Added the new `examples' directory to the distribution. 2001-05-31 15:54:25 +00:00
README * scripts/README, scripts/hello.scm, safe/untrusted.scm, 2001-06-14 20:36:06 +00:00
safe Added the new `examples' directory to the distribution. 2001-05-31 15:54:25 +00:00
untrusted.scm * scripts/README, scripts/hello.scm, safe/untrusted.scm, 2001-06-14 20:36:06 +00:00

							       -*- outline -*-

* Overview

This directory includes examples which show how to create and use safe
environments for safe (sand-boxed) execution of Scheme programs.

*Note* that the files in this directory are only suitable for
 demonstration purposes, if you have to implement safe evaluation
 mechanisms in important environments, you will have to do more than
 shown here -- for example disabling input/output operations.

The descriptions below assume that you have a working copy of Guile
installed and available with the standard installation prefix
`/usr/local'.

* Included Examples


** safe

  The main program, which executes the Scheme code in a file given on
  the command line in a safe environment.  The following command will
  do that with the file `untrusted.scm' (see below.)

  $ ./safe untrusted.scm

  or

  guile -s safe untrusted.scm

** untrusted.scm

  This file contains some Scheme code, which will be executed in a
  safe environment by the `safe' script.

** evil.scm

  This file also contains Scheme code, but it tries to do evil things.
  Evaluating this with the `safe' script will abort on those evil
  actions.