Add ICU message format support
[chromium-blink-merge.git] / content / common / common.sb
bloba3cf89b96c2b002bc846c086c2ffeffaa76f83ee
1 ;;
2 ;; Copyright (c) 2012 The Chromium Authors. All rights reserved.
3 ;; Use of this source code is governed by a BSD-style license that can be
4 ;; found in the LICENSE file.
5 ;;
6 ; This configuration file isn't used on it's own, but instead implicitly
7 ; included at the start of all other sandbox configuration files in Chrome.
8 (version 1)
10 ; Helper function to check if a param is set to true.
11 (define (param-true? str) (string=? (param str) "TRUE"))
13 ; Helper function to determine if a parameter is defined or not.
14 (define (param-defined? str) (string? (param str)))
16 ; Define constants for all of the parameter strings passed in.
17 (define disable-sandbox-denial-logging "DISABLE_SANDBOX_DENIAL_LOGGING")
18 (define enable-logging "ENABLE_LOGGING")
19 (define component-build-workaround "COMPONENT_BUILD_WORKAROUND")
20 (define permitted-dir "PERMITTED_DIR")
21 (define lion-or-later "LION_OR_LATER")
22 (define homedir-as-literal "USER_HOMEDIR_AS_LITERAL")
24 ; Consumes a subpath and appends it to the user's homedir path.
25 (define (user-homedir-path subpath) (string-append (param homedir-as-literal) subpath))
27 ; DISABLE_SANDBOX_DENIAL_LOGGING turns off log messages in the system log.
28 (if (param-true? disable-sandbox-denial-logging)
29     (deny default (with no-log))
30     (deny default))
32 ; Support for programmatically enabling verbose debugging.
33 (if (param-true? enable-logging) (debug deny))
35 ; Allow sending signals to self - http://crbug.com/20370
36 (allow signal (target self))
38 ; Needed for full-page-zoomed controls - http://crbug.com/11325
39 (allow sysctl-read)
41 ; Loading System Libraries.
42 (allow file-read*
43     (regex #"^/System/Library/Frameworks($|/)")
44     (regex #"^/System/Library/PrivateFrameworks($|/)")
45     (regex #"^/System/Library/CoreServices($|/)"))
47 (allow ipc-posix-shm)
49 ; Allow direct access to /dev/urandom, similar to Linux/POSIX, to allow
50 ; third party code (eg: bits of Adobe Flash and NSS) to function properly.
51 (allow file-read-data file-read-metadata (literal "/dev/urandom"))
53 ; Enables reading file metadata for the Chrome bundle and its parent paths.
54 ; http://crbug.com/127465
55 (if (and (param-defined? component-build-workaround)
56          (param-true? component-build-workaround))
57   (allow file-read-metadata ))