#lang racket/base
(require racket/sandbox)
(provide (all-from-out racket/sandbox))

;; no input/output
(sandbox-input        #f)
(sandbox-output       #f)
(sandbox-error-output #f)

;; no limits -- the handin server uses per-session limits
(sandbox-memory-limit #f)
(sandbox-eval-limits #f)

;; share these with evaluators
(sandbox-namespace-specs
 (let ([specs (sandbox-namespace-specs)])
   `(,(car specs)
     ,@(cdr specs)
     lang/posn
  for htdp / image
     mrlib/cache-image-snip
  for 2htdp / image
     mrlib/image-core)))

;; local overrides
(require racket/runtime-path)
(define-runtime-path overrides "overridden-collects")
(sandbox-override-collection-paths
 (cons overrides (sandbox-override-collection-paths)))

 no input/output
 no limits -- the handin server uses per-session limits
 share these with evaluators
 local overrides
#lang racket/base
(require racket/sandbox)
(provide (all-from-out racket/sandbox))

(sandbox-input        #f)
(sandbox-output       #f)
(sandbox-error-output #f)

(sandbox-memory-limit #f)
(sandbox-eval-limits #f)

(sandbox-namespace-specs
 (let ([specs (sandbox-namespace-specs)])
   `(,(car specs)
     ,@(cdr specs)
     lang/posn
  for htdp / image
     mrlib/cache-image-snip
  for 2htdp / image
     mrlib/image-core)))

(require racket/runtime-path)
(define-runtime-path overrides "overridden-collects")
(sandbox-override-collection-paths
 (cons overrides (sandbox-override-collection-paths)))
