genode/repos/os/run
Norman Feske 1fde4d638c init: service forwarding
This patch equips init with the ability to act as a server that forwards
session requests to its children. Session requests can be routed
depending of the requested service type and the session label
originating from init's parent.

The feature is configured by one or multiple <service> nodes hosted in
init's <config> node. The routing policy is selected by via the regular
server-side policy-selection mechanism, for example:

<config>
  ...
  <service name="LOG">
    <policy label="noux">
      <child name="terminal_log" label="important"/>
    </policy>
    <default-policy> <child name="nitlog"/> </default-policy>
  </service>
  ...
</config>

Each policy node must have a <child> sub node, which denotes name of the
server with the 'name' attribute. The optional 'label' attribute defines
the session label presented to the server, analogous to how the
rewriting of session labels works in session routes. If not specified,
the client-provided label is presented to the server as is.

Fixes #2247
2017-03-24 16:19:57 +01:00
..
ahci_bench.run Make label prefixing more strict 2016-11-30 13:37:07 +01:00
ahci_blk.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
audio_out_click.run Rename Linux audio driver to linux_audio_drv 2017-03-15 12:32:27 +01:00
blk_cache.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
blk.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
bomb.run run: remove vanished kernel/platform specifier 2017-01-13 13:07:01 +01:00
clipboard.run init: apply routing to environment sessions 2017-01-31 12:01:11 +01:00
cpu_quota.run cpu_quota.run: raise test timeout 2017-03-15 12:32:25 +01:00
cpufreq.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
demo.run Introduce gpio_drv function in run scripts 2017-02-23 14:54:50 +01:00
dynamic_config_loader.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
dynamic_config_slave.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
dynamic_config.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
fault_detection.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
fb_bench.run fb_bench: disable autopilot run on linux 2017-03-15 12:32:27 +01:00
framebuffer.run run: remove vanished kernel/platform specifier 2017-01-13 13:07:01 +01:00
fs_log.run Make label prefixing more strict 2016-11-30 13:37:07 +01:00
gpio_drv.run Introduce gpio_drv function in run scripts 2017-02-23 14:54:50 +01:00
gpio_led.run Introduce gpio_drv function in run scripts 2017-02-23 14:54:50 +01:00
gpio_signal.run Introduce gpio_drv function in run scripts 2017-02-23 14:54:50 +01:00
init_smp.run os: add testcase for bomb/init on several CPUs 2017-01-13 13:05:45 +01:00
init.run init: service forwarding 2017-03-24 16:19:57 +01:00
input_filter.run input_filter.run: omit char-repeat test on Qemu 2017-03-15 12:32:24 +01:00
input.run input.run: add missing routing rules 2017-01-31 12:01:17 +01:00
kdb_uart_drv.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
loader.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
mixer.run Rename Linux audio driver to linux_audio_drv 2017-03-15 12:32:27 +01:00
nic_loopback.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
panda_uart4_echo.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
part_blk.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
pci.run os: adapt pci test to component API 2016-12-23 16:52:09 +01:00
ram_fs_chunk.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
report_rom.run base: remove Child::heap 2017-02-28 12:59:23 +01:00
resource_request.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
resource_yield.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
rom_blk.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
rom_filter.run init: apply routing to environment sessions 2017-01-31 12:01:11 +01:00
rom_to_file.run os: fix session routes in rom_to_file.run 2017-02-28 12:59:28 +01:00
rtc.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
sd_card_bench.run sd_card_bench: exclude foc+imx_53 and odroid_xu 2017-01-31 12:01:17 +01:00
sd_card.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
signal.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
tar_rom.run init: apply routing to environment sessions 2017-01-31 12:01:11 +01:00
terminal_crosslink.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
thread_join.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
timed_semaphore.run os/test: transition to new base API 2017-01-31 12:01:15 +01:00
timeout.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
timer_accuracy.run timer_accuracy: generalize, automate, new base API 2017-01-31 12:01:15 +01:00
timer.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
trace.run os: synchronize thread destruction of trace test 2017-03-15 12:32:25 +01:00
tz_vmm.run tz_vmm: update to new API and clean up 2017-01-31 12:01:11 +01:00
uart.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
usb_block.run Introduce gpio_drv function in run scripts 2017-02-23 14:54:50 +01:00
vfs_stress_fs.run Ajdust run scenarios for strict policy matching 2016-06-22 12:21:41 +02:00
vfs_stress_ram.run Omit superfluous use of "CAP"/"SIGNAL" services 2016-05-09 13:24:51 +02:00
vmm.run run: remove vanished kernel/platform specifier 2017-01-13 13:07:01 +01:00
weak_ptr.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
xml_generator.run Build dynamically linked executables by default 2016-12-14 11:22:27 +01:00
xml_node.run init: apply routing to environment sessions 2017-01-31 12:01:11 +01:00