Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  nsjail.cfg   Sprache: unbekannt

 
Spracherkennung für: .cfg vermutete Sprache: Unknown {[0] [0] [0]} [Methode: Schwerpunktbildung, einfache Gewichte, sechs Dimensionen]

name: "android-build-sandbox"
description: "Sandboxed Android Platform Build."
description: "No network access and a limited access to local host resources."

# All configuration options are described in
https://github.com/google/nsjail/blob/master/config.proto

# Run once then exit
mode: ONCE

# No time limit
time_limit: 0

# Limits memory usage
rlimit_as_type: SOFT
# Maximum size of core dump files
rlimit_core_type: SOFT
# Limits use of CPU time
rlimit_cpu_type: SOFT
# Maximum file size
rlimit_fsize_type: SOFT
# Maximum number of file descriptors opened
rlimit_nofile_type: SOFT
# Maximum stack size
rlimit_stack_type: SOFT
# Maximum number of threads
rlimit_nproc_type: SOFT

# Allow terminal control
# This let's users cancel jobs with CTRL-C
# without exiting the jail
skip_setsid: true

# Below are all the host paths that shall be mounted
# to the sandbox

# Mount proc as read/write.
mount {
  dst: "/proc"
  fstype: "proc"
  rw: true
}

# The user must mount the source to /src using --bindmount
# It will be set as the initial working directory
cwd: "/src"

# The sandbox User ID was chosen arbitrarily
uidmap {
  inside_id: "999999"
  outside_id: ""
  count: 1
}

# The sandbox Group ID was chosen arbitrarily
gidmap {
  inside_id: "65534"
  outside_id: ""
  count: 1
}

# By default nsjail does not propagate the environment into the jail. We need
# the path to be set up. There are a few ways to solve this problem, but to
# avoid an undocumented dependency we are explict about the path we inject.
envar: "PATH=/usr/bin:/usr/sbin:/bin:/sbin"

# Some tools in the build toolchain expect a $HOME to be set
# Point $HOME to /tmp in case the toolchain needs to write something out there
envar: "HOME=/tmp"
mount {
  dst: "/tmp"
  fstype: "tmpfs"
  rw: true
  is_bind: false
}

# Some tools need /dev/shm to created a named semaphore. Use a new tmpfs to
# limit access to the external environment.
mount {
  dst: "/dev/shm"
  fstype: "tmpfs"
  rw: true
  is_bind: false
}

# Map the working User ID to a username
# Some tools like Java need a valid username
mount {
  src_content: "nobody:x:999999:65534:nobody:/tmp:/bin/bash"
  dst: "/etc/passwd"
  mandatory: false
}

# Define default group
mount {
  src_content: "nogroup::65534:nogroup"
  dst: "/etc/group"
  mandatory: false
}

# Empty mtab file needed for some build scripts that check for images being mounted
mount {
  src_content: "\n"
  dst: "/etc/mtab"
  mandatory: false
}

# Explicitly mount required device file nodes
#
# This will enable a chroot based NsJail sandbox. A chroot does not provide
# device file nodes. So just mount the required device file nodes directly
# from the host.
#
# Note that this has no effect in a docker container, since in that case
# NsJail will just mount the container device nodes. When we use NsJail
# in a docker container we mount the full file system root. So the container
# device nodes were already mounted in the NsJail.

# Some tools (like llvm-link) look for file descriptors in /dev/fd
mount {
  src: "/proc/self/fd"
  dst: "/dev/fd"
  is_symlink: true
  mandatory: false
}

# /dev/null is a very commonly used for silencing output
mount {
  src: "/dev/null"
  dst: "/dev/null"
  rw: true
  is_bind: true
}

# /dev/urandom used during the creation of system.img
mount {
  src: "/dev/urandom"
  dst: "/dev/urandom"
  rw: true
  is_bind: true
}

# /dev/random used by test scripts
mount {
  src: "/dev/random"
  dst: "/dev/random"
  rw: true
  is_bind: true
}

# /dev/zero is required to make vendor-qemu.img
mount {
  src: "/dev/zero"
  dst: "/dev/zero"
  is_bind: true
}

# /dev/stdin used during the creation files in external/cronet
mount {
  src: "/proc/self/fd/0"
  dst: "/dev/stdin"
  is_symlink: true
}

[Dauer der Verarbeitung: 0.14 Sekunden, vorverarbeitet 2026-06-27]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik