Compare commits

..

No commits in common. "main" and "unman_362b0618" have entirely different histories.

629 changed files with 29110 additions and 35105 deletions

5
.gitignore vendored
View file

@ -1,5 +0,0 @@
_build
**/__pycache__/*
uv.lock
poetry.lock
.venv

6
.gitlab-ci.yml Normal file
View file

@ -0,0 +1,6 @@
include:
- project: 'QubesOS/qubes-continuous-integration'
file: '/gitlab-website.yml'
build:doc:
extends: .website

View file

@ -1,25 +0,0 @@
version: 2
build:
os: "ubuntu-lts-latest"
tools:
python: "3.13"
submodules:
include: all
recursive: true
sphinx:
builder: html
configuration: conf.py
fail_on_warning: false
python:
install:
- requirements: requirements.txt
formats:
- pdf
- epub

View file

@ -2,11 +2,11 @@
Thank you for your interest in contributing to `qubes-doc`, the Qubes OS
Project's dedicated documentation repository! Please see [how to edit the
documentation](https://doc.qubes-os.org/developer/general/how-to-edit-the-rst-documentation.html) for
documentation](https://www.qubes-os.org/doc/how-to-edit-the-documentation/) for
detailed contribution instructions.
In addition, please take a moment to read our [documentation style
guide](https://doc.qubes-os.org/developer/general/rst-documentation-style-guide.html) before
guide](https://www.qubes-os.org/doc/documentation-style-guide/) before
contributing. These guidelines are important to maintaining high standards of
quality, and following them will increase the likelihood that your contribution
will be accepted.

View file

@ -1,11 +1,11 @@
# Qubes OS Documentation
Canonical URL: https://doc.qubes-os.org
Canonical URL: https://www.qubes-os.org/doc/
All [Qubes OS Project](https://github.com/QubesOS) documentation pages are
stored as plain reStructuredText files in this dedicated repository. By cloning and
stored as plain text files in this dedicated repository. By cloning and
regularly pulling from this repo, users can maintain their own up-to-date
offline copy of all Qubes documentation rather than relying solely on the Web.
To contribute, please see [how to edit the
documentation](https://doc.qubes-os.org/developer/general/how-to-edit-the-rst-documentation.html).
documentation](https://www.qubes-os.org/doc/how-to-edit-the-documentation/).

View file

@ -1,29 +1,9 @@
==============================================
Welcome to Qubes OS developer's documentation!
==============================================
This is documentation for the source code. Please choose specific repostitory:
.. toctree::
:maxdepth: 1
* `core-admin </projects/core-admin>`_
* `core-admin-client </projects/core-admin-client>`_
core-admin <>
.. _core-admin: /projects/core-admin
core-admin-client <>
.. _core-admin-client: /projects/core-admin-client
qubes-core-qrexec <>
.. _qubes-core-qrexec: /projects/qubes-core-qrexec
Or see the main Qubes OS documentation <https://www.qubes-os.org/doc/>
.. _the main qubes os documentation: https://www.qubes-os.org/doc/
.
Or see `the main Qubes OS documentation <https://www.qubes-os.org/doc/>`_.

View file

@ -1,68 +0,0 @@
"""
ReST directive for embedding Youtube and Vimeo videos.
There are two directives added: ``youtube`` and ``vimeo``. The only
argument is the video id of the video to include.
Both directives have three optional arguments: ``height``, ``width``
and ``align``. Default height is 281 and default width is 500.
Example::
.. youtube:: anwy2MPT5RE
:height: 315
:width: 560
:align: left
:copyright: (c) 2012 by Danilo Bargen.
:license: BSD 3-clause
From https://gist.github.com/ehles/bed012d78aad5d3cd6c35a49bef32f9f
"""
from __future__ import absolute_import
from docutils import nodes
from docutils.parsers.rst import Directive, directives
def align(argument):
"""Conversion function for the "align" option."""
return directives.choice(argument, ('left', 'center', 'right'))
class IframeVideo(Directive):
has_content = False
required_arguments = 1
optional_arguments = 0
final_argument_whitespace = False
option_spec = {
'height': directives.nonnegative_int,
'width': directives.nonnegative_int,
'align': align,
}
default_width = 500
default_height = 281
def run(self):
self.options['video_id'] = directives.uri(self.arguments[0])
if not self.options.get('width'):
self.options['width'] = self.default_width
if not self.options.get('height'):
self.options['height'] = self.default_height
if not self.options.get('align'):
self.options['align'] = 'left'
return [nodes.raw('', self.html % self.options, format='html')]
class GeneralVid(IframeVideo):
html = '<iframe src="%(video_id)s" width="%(width)u" height="%(height)u" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowfullscreen class="responsive" referrerpolicy="no-referrer" scrolling="no"></iframe>'
class Youtube(IframeVideo):
html = '<iframe src="https://www.youtube-nocookie.com/embed/%(video_id)s" \
width="%(width)u" height="%(height)u" frameborder="0" \
webkitAllowFullScreen mozallowfullscreen allowfullscreen \
class="responsive" referrerpolicy="no-referrer" scrolling="no"></iframe>'
def setup(builder):
directives.register_directive('youtube', Youtube)
directives.register_directive('generalvid', GeneralVid)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 197 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

View file

@ -1,225 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" "http://www.w3.org/TR/2001/PR-SVG-20010719/DTD/svg10.dtd">
<svg width="25cm" height="16cm" viewBox="-1 -1 482 306" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g>
<rect style="fill: #ffffff" x="170" y="0" width="310" height="290"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="170" y="0" width="310" height="290"/>
</g>
<g>
<rect style="fill: #ffffff" x="180" y="20" width="100" height="220"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" x="180" y="20" width="100" height="220"/>
</g>
<g>
<rect style="fill: #ffffff" x="0" y="0" width="150" height="160"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="0" y="0" width="150" height="160"/>
</g>
<g>
<rect style="fill: #ffffff" x="0" y="170" width="150" height="70"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="0" y="170" width="150" height="70"/>
</g>
<text font-size="10.16" style="fill: #000000;text-anchor:start;font-family:League Spartan;font-style:normal;font-weight:700" x="0" y="9.4">
<tspan x="0" y="9.4"> mgmt-1</tspan>
<tspan x="0" y="22.1"> (gui-domain?)</tspan>
</text>
<text font-size="10.16" style="fill: #000000;text-anchor:start;font-family:League Spartan;font-style:normal;font-weight:700" x="0" y="179.4">
<tspan x="0" y="179.4"> mgmt-2 ...</tspan>
<tspan x="0" y="192.1"> (remote?)</tspan>
</text>
<text font-size="10.16" style="fill: #000000;text-anchor:start;font-family:League Spartan;font-style:normal;font-weight:700" x="170" y="9.4">
<tspan x="170" y="9.4"> dom0</tspan>
</text>
<g>
<polygon style="fill: #ffffff" points="398.279,118.274 438.208,160.053 398.279,201.832 358.35,160.053 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="398.279,118.274 438.208,160.053 398.279,201.832 358.35,160.053 "/>
<text font-size="9.03111" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="398.279" y="162.809">
<tspan x="398.279" y="162.809">qubesd</tspan>
</text>
</g>
<g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="441.03,160.053 460,160.053 460,220 420,220 420,235.528 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="448.794,155.053 438.794,160.053 448.794,165.053 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="415,227.764 420,237.764 425,227.764 "/>
</g>
<g>
<polygon style="fill: #ffffff" points="398.508,8.58316 438.389,49.6781 398.508,90.773 358.626,49.6781 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="398.508,8.58316 438.389,49.6781 398.508,90.773 358.626,49.6781 "/>
<text font-size="9.03111" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="398.508" y="52.4337">
<tspan x="398.508" y="52.4337">libvirtd</tspan>
</text>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="398.294" y1="115.528" x2="398.357" y2="96.127"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="393.32,107.748 398.287,117.764 403.32,107.78 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="403.332,103.907 398.365,93.891 393.332,103.875 "/>
</g>
<g>
<rect style="fill: #ffffff" x="200" y="60" width="60" height="20"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="200" y="60" width="60" height="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="230" y="72.75">
<tspan x="230" y="72.75">qrexec call</tspan>
</text>
<g>
<ellipse style="fill: #ffffff" cx="310" cy="70" rx="10" ry="10"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="310" cy="70" rx="10" ry="10"/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="260" y1="70" x2="294.529" y2="70"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="286.765,75 296.765,70 286.765,65 "/>
</g>
<g>
<rect style="fill: #ffffff" x="200" y="90" width="60" height="20"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="200" y="90" width="60" height="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="230" y="102.75">
<tspan x="230" y="102.75">qrexec call</tspan>
</text>
<g>
<ellipse style="fill: #ffffff" cx="310" cy="100" rx="10" ry="10"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="310" cy="100" rx="10" ry="10"/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="260" y1="100" x2="294.529" y2="100"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="286.765,105 296.765,100 286.765,95 "/>
</g>
<g>
<rect style="fill: #ffffff" x="200" y="120" width="60" height="20"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="200" y="120" width="60" height="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="230" y="132.75">
<tspan x="230" y="132.75">qrexec call</tspan>
</text>
<g>
<ellipse style="fill: #ffffff" cx="310" cy="130" rx="10" ry="10"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="310" cy="130" rx="10" ry="10"/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="260" y1="130" x2="294.529" y2="130"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="286.765,135 296.765,130 286.765,125 "/>
</g>
<g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="320,70 340,70 340,160.053 355.528,160.053 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="347.764,165.053 357.764,160.053 347.764,155.053 "/>
</g>
<g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="320,100 340,100 340,160.053 355.528,160.053 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="347.764,165.053 357.764,160.053 347.764,155.053 "/>
</g>
<g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="320,130 340,130 340,160.053 355.528,160.053 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="347.764,165.053 357.764,160.053 347.764,155.053 "/>
</g>
<text font-size="9.03111" style="fill: #000000;text-anchor:start;font-family:League Spartan;font-style:normal;font-weight:700" x="180" y="28.4">
<tspan x="180" y="28.4"> qrexec</tspan>
</text>
<g>
<ellipse style="fill: #ffffff" cx="230" cy="190" rx="20" ry="20"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="230" cy="190" rx="20" ry="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="230" y="187.811">
<tspan x="230" y="187.811">policy</tspan>
<tspan x="230" y="197.689">query</tspan>
</text>
<g>
<ellipse style="fill: #ffffff" cx="102.515" cy="62.5154" rx="32.5154" ry="32.5154"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="102.515" cy="62.5154" rx="32.5154" ry="32.5154"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="102.515" y="60.3265">
<tspan x="102.515" y="60.3265">Qubes OS</tspan>
<tspan x="102.515" y="70.2043">Manager</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="135.936" y1="65.0813" x2="195.541" y2="69.6576"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="187.417,74.0486 197.77,69.8288 188.183,64.078 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="134.741" y1="71.6009" x2="195.696" y2="88.7864"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="186.866,91.492 197.848,89.3932 189.58,81.8672 "/>
</g>
<g>
<ellipse style="fill: #ffffff" cx="44.9693" cy="114.969" rx="24.9693" ry="24.9693"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="44.9693" cy="114.969" rx="24.9693" ry="24.9693"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="44.9694" y="117.719">
<tspan x="44.9694" y="117.719">CLI tools</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="70.8961" y1="114.138" x2="195.53" y2="110.143"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="187.93,115.389 197.765,110.072 187.61,105.395 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="70.8015" y1="117.474" x2="195.549" y2="129.568"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="187.339,133.796 197.774,129.784 188.304,123.843 "/>
</g>
<g>
<ellipse style="fill: #ffffff" cx="114.969" cy="204.969" rx="24.9693" ry="24.9693"/>
<ellipse style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" cx="114.969" cy="204.969" rx="24.9693" ry="24.9693"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="114.969" y="202.781">
<tspan x="114.969" y="202.781">remote</tspan>
<tspan x="114.969" y="212.659">proxy</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x1="135.609" y1="189.199" x2="196.446" y2="142.715"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="193.313,151.402 198.223,141.358 187.242,143.456 "/>
</g>
<text font-size="9.03111" style="fill: #000000;text-anchor:end;font-family:League Spartan;font-style:normal;font-weight:700" x="160" y="268.4">
<tspan x="160" y="268.4">Qubes Admin API</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" x1="160" y1="260" x2="160" y2="190.5"/>
<polygon style="fill: #000000" points="162,190.5 160,180.5 158,190.5 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" points="162,190.5 160,180.5 158,190.5 "/>
</g>
<text font-size="9.03111" style="fill: #000000;text-anchor:end;font-family:League Spartan;font-style:normal;font-weight:700" x="160" y="288.4">
<tspan x="160" y="288.4">qubesd socket API</tspan>
</text>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" x1="160" y1="280" x2="340.913" y2="175.261"/>
<polygon style="fill: #000000" points="341.915,176.992 349.567,170.251 339.911,173.53 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 1; stroke: #000000" points="341.915,176.992 349.567,170.251 339.911,173.53 "/>
</g>
<g>
<line style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 10; stroke: #000000" x1="10" y1="270" x2="89.1025" y2="220.994"/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="85.1358,229.334 91.0034,219.817 79.8693,220.833 "/>
</g>
<g>
<path style="fill: #ffffff" d="M 9.10799 272.906 C 6.00939,272.756 0,275.907 0.845072,282.66 C 1.69014,289.413 5.7277,290.914 7.41785,288.963 C 9.10799,287.012 4.78873,298.417 13.0517,301.419 C 21.3145,304.42 25.5399,299.618 24.3192,296.166 C 23.0986,292.715 31.5493,304.27 35.4929,297.667 C 39.4366,291.064 31.4554,284.761 33.1455,285.662 C 34.8357,286.562 40,285.362 38.3099,274.106 C 36.6197,262.851 21.4084,271.555 23.0986,269.905 C 24.7887,268.254 20.5633,260 15.3052,261.651 C 10.047,263.302 9.674,266.297 9.11062,272.9 L 9.10799,272.906z"/>
<path style="fill: none; fill-opacity:0; stroke-width: 2; stroke-dasharray: 4; stroke: #000000" d="M 9.10799 272.906 C 6.00939,272.756 0,275.907 0.845072,282.66 C 1.69014,289.413 5.7277,290.914 7.41785,288.963 C 9.10799,287.012 4.78873,298.417 13.0517,301.419 C 21.3145,304.42 25.5399,299.618 24.3192,296.166 C 23.0986,292.715 31.5493,304.27 35.4929,297.667 C 39.4366,291.064 31.4554,284.761 33.1455,285.662 C 34.8357,286.562 40,285.362 38.3099,274.106 C 36.6197,262.851 21.4084,271.555 23.0986,269.905 C 24.7887,268.254 20.5633,260 15.3052,261.651 C 10.047,263.302 9.674,266.297 9.11062,272.9 L 9.10799,272.906"/>
<text font-size="12.8" style="fill: #000000;text-anchor:middle;font-family:sans-serif;font-style:normal;font-weight:normal" x="21.0723" y="286.993">
<tspan x="21.0723" y="286.993"></tspan>
</text>
</g>
<g>
<rect style="fill: #ffffff" x="410" y="130" width="30" height="20"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="410" y="130" width="30" height="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="425" y="142.75">
<tspan x="425" y="142.75">ext</tspan>
</text>
<g>
<polygon style="fill: #ffffff" points="395.221,240 450.973,240 450.973,280 389.026,280 389.026,244 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="395.221,240 450.973,240 450.973,280 389.026,280 389.026,244 "/>
<text font-size="9.03111" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="421.548" y="263.822">
<tspan x="421.548" y="263.822">qubes.xml</tspan>
</text>
</g>
<g>
<polygon style="fill: #ffffff" points="314.926,240 371.342,240 371.342,280 308.658,280 308.658,244 "/>
<polygon style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="314.926,240 371.342,240 371.342,280 308.658,280 308.658,244 "/>
<text font-size="9.03111" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="341.567" y="263.822">
<tspan x="341.567" y="263.822">RPC policy</tspan>
</text>
</g>
<g>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="250.992,190 431.72,190 431.72,210 340,210 340,235.528 "/>
<polyline style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" points="335,227.764 340,237.764 345,227.764 "/>
</g>
<g>
<rect style="fill: #ffffff" x="420" y="120" width="30" height="20"/>
<rect style="fill: none; fill-opacity:0; stroke-width: 2; stroke: #000000" x="420" y="120" width="30" height="20"/>
</g>
<text font-size="7.90222" style="fill: #000000;text-anchor:middle;font-family:League Spartan;font-style:normal;font-weight:700" x="435" y="132.75">
<tspan x="435" y="132.75">ext</tspan>
</text>
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 846 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

View file

@ -1,841 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="821"
height="441"
version="1.1"
content="&lt;mxfile userAgent=&quot;Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0&quot; version=&quot;7.6.7&quot; editor=&quot;www.draw.io&quot; type=&quot;device&quot;&gt;&lt;diagram id=&quot;581adbd3-4043-ab63-00c4-0d1109c21ff0&quot; name=&quot;Page-1&quot;&gt;7Vtbj+I2FP41SNuHjrBz5XGYS7dqK612tNrdRxMMpBNi6pgB+utrJzYknATMkDDMqDyg5Ng49vedm49Dz7mbr3/jZDH7i41p0sP98brn3Pcw9gdYfivBphCg0PcLyZTHYy3bCZ7if6kW9rV0GY9pVukoGEtEvKgKI5amNBIVGeGcrardJiypPnVBphQIniKSQOn3eCxmWor8wa7hM42nM/3oEAdFw4hEz1POlql+Xg87k/xTNM+JGUsvNJuRMVuVRM5Dz7njjIniar6+o4nC1sBW/O6xoXU7b05TYfODQPPyQpIlNVPOJyY2Bgy1noXuRrmg6zoKyMh078M5oO3KpMZQNqeCb2QXPZBnfqK1xdW3qx3yjukyK4GO+1pINNvT7dC7FcsLvegGADwAwIrxZwBCtornCUnl3TATnD3TO5Ywnrc5/fwjWyZxkhh5yvLOjbiV8SlYgACdhYAe7qsiJ53KdVTG8+uGc6qjkURQnhJBh0qhMwDrdqZWSIdQ1b7hx8+/y4s+gFuiJSc1nIm5HO4eAdQ1ujWAkySepvI2kuhSKR8q7GNp2re6YR6Px+oxw9UsFvRpQSL1zJV0ZFKWmy5VM+5bk+cd1G7kVLUb+VC93Vpuz1duFyr3hDOJi3RP2E8UwiMur6bq6lNBBZ0vEyJilv4CSNmBgxrga+RLWokfhXQ02SNNyseEhpNoiza0ixoGINoGXeQCdFGd6fgtwOsjAO9QxR6pdrj/SSq3co9JLJfTNpaj0HO9fY+jYk0Y0Siqs4KzwDWt3lFHve1Sxhq1osv+AQz7VbzkGvnmR/nmp+p04+VYEi5uVY6g4ElIlsWRET/GiRnibyrERicmZCmYFDEuZmzKUpL8ydiiQo1JEvLnrWPxQ89JXRePDjzryLHLGQ7RlrElj2hVEeUaplRUbZ+OK6kOJJdTZe8v1cznQED5wmI5l2alGAxuQi9ALs6/nb0Bi2nrMc6KJ55F6lLVkFOtLMQjRyauO2vihU4DD+bRcOzWsmU8hLWNOWEVzqDGxur8mdeGjWFoY0p9nvTtzgAedtLhcSvsQyt8vXlZ2q+xQgStsJGlskkF0KLQoG2LsuYluD5erFgYk2y2DXJWuKMaV4Zbd2W2wHteJ8DvhSXcWVyqCzW2Ecs7KSzVUGkiUJnK4M2YDEC0+IfTNY3UOlgSRxuYEdN0wuRq5mqRoDFOVYGDza9n79JB9PEcy/DTRjoduMcDete1CHx8s+bU79baAMABAGSb7NdlNgI4dFuOcK0wukx9ZgAw+RhVA+cgxvtVg5qtVldFgxD/j7i6vyDktZUxKShAFxLPFCB/UgGhqUzQXFho8gqnFGMuGTycECDUQab2hgUEXL91Mawc2btoDWu5GCBRIJtSh4Xa1melkfdrBUHVxkKvTPHR7n5/TyOK57+2gAAzQnV6k9dGW7S1bXmzuSB6lq2ZoLyXudjWDdqwvfBjui+ELoihC2Prx/JfDaUXS/8VXqX/Qug0B2ZyirY8mN9u0DO85WpimKtWjIomo1Cn6AmkHnXCKSAhMEWcahQ5VpE+eZxCXduobAfQoQKeL30oj0PoDDvc9cHYvKA8UyoFkOh2KxzWo3QRFBDc+17s+LaVLCZswPg6dgzuAYSuP5427QdCGDzbP7iwOwr0904CsZXjfYXDdGCZ/j1RmadGR45K6nht/1zEjleEL0UsfsMXWGpCRrPzs2TvSjcfZox3+iKLPbjX8CJLCKv8Szy5+UqncaaWCPRatd4uxUwuOI6IoD08/OPhZ43+c7KS495+uf+WQZ7eUaX2tDMq5Fi+8uW1QR50SADprlNzd195L5mZI+gqysWejE1EywWfJt+7dR1HfO+WMvtT0LcrpZnXH7osSp4bzE4HdKt5b4CoiwBy5RqJBuNVL8tcLF2svsRkkS0aiipv1mgwKzuD1msw1o4UHva/kGUiAFmv3d7XIHQk7IQNL3J34Vfl7e5PHkVivPsnjfPwHw==&lt;/diagram&gt;&lt;/mxfile&gt;"
id="svg208"
sodipodi:docname="architecture.svg"
inkscape:version="1.0.2 (e86c870879, 2021-01-15)">
<metadata
id="metadata212">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1920"
inkscape:window-height="1080"
id="namedview210"
showgrid="false"
inkscape:zoom="1.4640682"
inkscape:cx="472.92629"
inkscape:cy="213.58528"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="g206"
inkscape:document-rotation="0" />
<defs
id="defs2" />
<g
transform="translate(0.5,0.5)"
id="g206">
<path
d="M 500,23 V 0 h 320 v 23 z"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path4" />
<path
d="M 500,23 V 200 H 820 V 23"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path6" />
<g
fill="#000000"
font-family="Helvetica"
font-weight="bold"
text-anchor="middle"
font-size="12px"
id="g10">
<text
x="658.90997"
y="15"
id="text8">work</text>
</g>
<g
transform="translate(627.5,163.5)"
id="g16">
<switch
id="switch14">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="44"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 45px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAPHID </xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="22"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text12">CTAPHID</text>
</switch>
</g>
<rect
x="500"
y="114"
width="120"
height="60"
rx="9"
ry="9"
fill="#dae8fc"
stroke="#6c8ebf"
pointer-events="none"
id="rect18" />
<g
transform="translate(515.5,121.5)"
id="g24">
<switch
id="switch22">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="86"
height="27"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 87px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">frontend<xhtml:br />
(HID emulation)</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="43"
y="20"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text20"><tspan
sodipodi:role="line"
id="tspan90"
x="43"
y="20">frontend</tspan><tspan
sodipodi:role="line"
id="tspan92"
x="43"
y="35">(HID emulation)</tspan></text>
</switch>
</g>
<rect
x="650"
y="40"
width="150"
height="120"
rx="18"
ry="18"
fill="#f8cecc"
stroke="#b85450"
pointer-events="none"
id="rect26" />
<g
transform="translate(668.5,92.5)"
id="g32">
<switch
id="switch30">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="111"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 112px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser (CTAP client)</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="56"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text28">Browser (CTAP client)</text>
</switch>
</g>
<path
d="m 644.57,133.14 -19.02,8.78"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path34" />
<path
d="m 649.34,130.94 -4.89,6.11 0.12,-3.91 -3.05,-2.45 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path36" />
<path
d="m 620.78,144.12 4.89,-6.11 -0.12,3.91 3.05,2.44 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path38" />
<rect
x="352.95929"
y="29.943514"
width="133.92751"
height="386.92245"
fill="#d5e8d4"
stroke="#82b366"
pointer-events="none"
id="rect40"
style="stroke-width:0.911286" />
<path
d="m 346.13,235.18 h 73.63 v 64.7 h 73.64"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path42" />
<path
d="m 340.88,235.18 7,-3.5 -1.75,3.5 1.75,3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path44" />
<path
d="m 498.65,299.88 -7,3.5 1.75,-3.5 -1.75,-3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path46" />
<path
d="m 493.4,144.59 h -73.64 v 60 h -73.63"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path54" />
<path
d="m 498.65,144.59 -7,3.5 1.75,-3.5 -1.75,-3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path56" />
<path
d="m 340.88,204.59 7,-3.5 -1.75,3.5 1.75,3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path58" />
<g
transform="translate(383.5,429.5)"
id="g64">
<switch
id="switch62">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="72"
height="41"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 73px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">qrexec policy<xhtml:br />
enforcement<xhtml:br />
in dom0</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="36"
y="-69"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text60"><tspan
sodipodi:role="line"
id="tspan116"
x="36"
y="-69">qrexec policy</tspan><tspan
sodipodi:role="line"
id="tspan118"
x="36"
y="-54">enforcement</tspan><tspan
sodipodi:role="line"
x="36"
y="-39"
id="tspan122">in dom0</tspan></text>
</switch>
</g>
<path
d="m 20,143 v -23 h 320 v 23 z"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path66" />
<path
d="M 20,143 V 320 H 340 V 143"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path68" />
<g
fill="#000000"
font-family="Helvetica"
font-weight="bold"
text-anchor="middle"
font-size="12px"
id="g72">
<text
x="178.91"
y="135"
id="text70">sys-usb</text>
</g>
<g
transform="translate(147.5,163.5)"
id="g78">
<switch
id="switch76">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="44"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 45px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAPHID </xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="22"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text74">CTAPHID</text>
</switch>
</g>
<g
transform="translate(147.5,263.5)"
id="g84">
<switch
id="switch82">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="44"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 45px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAPHID </xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="22"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text80">CTAPHID</text>
</switch>
</g>
<rect
x="0"
y="150"
width="120"
height="60"
rx="9"
ry="9"
fill="#f8cecc"
stroke="#b85450"
pointer-events="none"
id="rect86" />
<g
transform="translate(18.5,164.5)"
id="g92">
<switch
id="switch90">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="80"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 81px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAP HID token</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="40"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text88"><tspan
sodipodi:role="line"
id="tspan253"
x="40"
y="12">CTAP HID token</tspan><tspan
sodipodi:role="line"
id="tspan255"
x="40"
y="27">(CTAP authenticator)</tspan></text>
</switch>
</g>
<path
d="M 213.4,204.59 H 170.35 V 179.88 H 126.13"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path94" />
<path
d="m 218.65,204.59 -7,3.5 1.75,-3.5 -1.75,-3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path96" />
<path
d="m 120.88,179.88 7,-3.5 -1.75,3.5 1.75,3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path98" />
<rect
x="220"
y="190"
width="120"
height="60"
rx="9"
ry="9"
fill="#dae8fc"
stroke="#6c8ebf"
pointer-events="none"
id="rect100" />
<g
transform="translate(255.5,212.5)"
id="g106">
<switch
id="switch104">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="47"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 48px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">backend</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="24"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text102">backend</text>
</switch>
</g>
<rect
x="0"
y="230"
width="120"
height="60"
rx="9"
ry="9"
fill="#f8cecc"
stroke="#b85450"
pointer-events="none"
id="rect108" />
<g
transform="translate(18.5,244.5)"
id="g114">
<switch
id="switch112">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="80"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 81px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAP HID token</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="40"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text110"><tspan
sodipodi:role="line"
id="tspan257"
x="40"
y="12">CTAP HID token</tspan><tspan
sodipodi:role="line"
id="tspan259"
x="40"
y="27">(CTAP authenticator)</tspan></text>
</switch>
</g>
<path
d="m 213.4,235.18 h -43.05 v 24.7 h -44.22"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path116" />
<path
d="m 218.65,235.18 -7,3.5 1.75,-3.5 -1.75,-3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path118" />
<path
d="m 120.88,259.88 7,-3.5 -1.75,3.5 1.75,3.5 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path120" />
<path
d="m 500,263 v -23 h 320 v 23 z"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path126" />
<path
d="M 500,263 V 440 H 820 V 263"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path128" />
<g
fill="#000000"
font-family="Helvetica"
font-weight="bold"
text-anchor="middle"
font-size="12px"
id="g132">
<text
x="658.90997"
y="255"
id="text130">personal</text>
</g>
<rect
x="500"
y="270"
width="120"
height="60"
rx="9"
ry="9"
fill="#dae8fc"
stroke="#6c8ebf"
pointer-events="none"
id="rect134" />
<g
transform="translate(515.5,277.5)"
id="g140">
<switch
id="switch138">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="86"
height="27"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 87px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">frontend<xhtml:br />
(HID emulation)</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="43"
y="20"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text136"><tspan
sodipodi:role="line"
id="tspan94"
x="43"
y="20">frontend</tspan><tspan
sodipodi:role="line"
id="tspan96"
x="43"
y="35">(HID emulation)</tspan></text>
</switch>
</g>
<path
d="m 643.95,307.86 -18.14,-5.98"
fill="none"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path142" />
<path
d="m 648.94,309.51 -7.75,1.13 2.76,-2.78 -0.56,-3.87 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path144" />
<path
d="m 620.83,300.23 7.74,-1.13 -2.76,2.78 0.57,3.87 z"
fill="#000000"
stroke="#000000"
stroke-miterlimit="10"
pointer-events="none"
id="path146" />
<g
transform="translate(515.5,365.5)"
id="g160">
<switch
id="switch158">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="86"
height="27"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 87px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">frontend<xhtml:br />
(HID emulation)</xhtml:div>
</xhtml:div>
</foreignObject>
</switch>
</g>
<rect
x="650"
y="280"
width="150"
height="120"
rx="18"
ry="18"
fill="#f8cecc"
stroke="#b85450"
pointer-events="none"
id="rect162" />
<g
transform="translate(668.5,332.5)"
id="g168">
<switch
id="switch166">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="111"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 112px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">Browser (CTAP client)</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="56"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text164">Browser (CTAP client)</text>
</switch>
</g>
<g
transform="translate(360.5,98.5)"
id="g174">
<switch
id="switch172">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="119"
height="41"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 120px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">u2f.Register<xhtml:br />
u2f.Authenticate+KEY<xhtml:br />
(raw APDUs)</xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="60"
y="-39"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text170"><tspan
sodipodi:role="line"
id="tspan100"
x="60"
y="-39">ctap.GetInfo</tspan><tspan
sodipodi:role="line"
x="60"
y="-24"
id="tspan112">ctap.ClientPin</tspan><tspan
sodipodi:role="line"
x="60"
y="-9"
id="tspan114">u2f.Register</tspan><tspan
sodipodi:role="line"
x="60"
y="6"
id="tspan104">u2f.Authenticate+KEY</tspan><tspan
sodipodi:role="line"
x="60"
y="21"
id="tspan106">(raw CBOR/APDU)</tspan></text>
</switch>
</g>
<g
transform="translate(59.5,452.5)"
id="g182">
<switch
id="switch180">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="99"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 100px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAP HID softtoken</xhtml:div>
</xhtml:div>
</foreignObject>
</switch>
</g>
<g
transform="translate(255.5,452.5)"
id="g190">
<switch
id="switch188">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="47"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 48px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">backend</xhtml:div>
</xhtml:div>
</foreignObject>
</switch>
</g>
<g
fill="#000000"
font-family="Helvetica"
font-weight="bold"
text-anchor="middle"
font-size="12px"
id="g204" />
<g
transform="translate(599.78076,342.20152)"
id="g16-3">
<switch
id="switch14-6">
<foreignObject
style="overflow:visible;"
pointer-events="all"
width="44"
height="12"
requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility">
<xhtml:div
style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; vertical-align: top; width: 45px; white-space: nowrap; overflow-wrap: normal; text-align: center;">
<xhtml:div
style="display:inline-block;text-align:inherit;text-decoration:inherit;">CTAPHID </xhtml:div>
</xhtml:div>
</foreignObject>
<text
x="22"
y="12"
fill="#000000"
text-anchor="middle"
font-size="12px"
font-family="Helvetica"
id="text12-7">CTAPHID</text>
</switch>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 557 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 247 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 124 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 167 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1,016 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 444 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View file

@ -1 +0,0 @@
<mxfile userAgent="Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0" version="8.0.2" editor="www.draw.io" type="device"><diagram id="32a8e41c-a064-97f3-9a90-4db0e0e6f5c1" name="Page-1">5VjbctsgEP0aPaYjgyTLj7GTXmbaTmby0OQRS2uJBgsVocjq1xcJbF2wM27i3No8ZOCwu8A5y4Ls4MV680mQPP3GY2AOcuONgy8chDzPVf8boNZAOMMaSASNNTTpgGv6Gwxo/JKSxlAMDCXnTNJ8CEY8yyCSA4wIwauh2Yqz4aw5ScACriPCbPQHjWVqduG7Hf4ZaJJuZ564ZmRJortE8DIz8zkIr9o/Pbwm21jGvkhJzKsehC8dvBCcS91abxbAGmq3tGm/jwdGd+sWkMljHJB2uCesNFsv6uIsA+mggKkI86VQraRp0fw+UCZmikLWW7La7ULcjuF5lVIJ1zmJmtFKZYfCUrlmZnhFGVtwxkXri2MfwthTeCEFv4PeSIiWOFATzs0KQUjYHNzlZMedSknga5CiViabYVrVO7l0v+q0nWwVSXu6BgYjJp2SXeSOUtUwrB6QxCYMYpVspsuFTHnCM8IuO3TeUeoO6YMNlTe99m1j8sFvepla2I3xaDvd2E+QsjanjJSSK6ib9yvnuYmoV9os72Gi1W54KSJjZY62JCIBYzXdL4cARiS9H0bfR27rei4EqXsGOaeZLCzud/GPkwM9vxzozekRPq8eJvJVA/ROHR4eO6sWje0D/0n2E88dJYde8aNTBf+HJ3f2KpnyROWD0wqP916KKyqgIo3hu7//Zi94/3kWmd91JiH3y5V6UVhHjDH1ymuOknob5Q0YMV7G74TZI4kNT0CsbxFrc5nF581ruCWRFAWNRjVpV3m6QnRrCtHxFaVfPtB+tnp8+Hvo2GJ/V2WssjAdihEGwwC68hmfB6pLMLq2piOx9H6tOI8oNMFbkbB/KSBbVfyaqo6OGEYjOd6erFNLVvXt5J3xjNVnv8olHPy2OunVsgojiKJ9BXAZ+p7vnqYAIvcV75bQIjoHUTRPo3d4SVtMvuRX6sxisuLi7h9gET8fiarb/VCjy0T3Yxi+/AM=</diagram></mxfile>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View file

@ -1 +0,0 @@
<mxfile userAgent="Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0" version="8.0.2" editor="www.draw.io" type="device"><diagram id="144a4769-0002-f4b6-27d0-e28edd050a98" name="Page-1">1VjLcpswFP0alukghDFe1m76mGlnMpNFk6UMMtDIiBGyMf36SiAeQrhDEj9iLzzS0b1CnHN1r4QFV9vDN4ay+BcNMbEcOzxY8IvlOK5ri38JlDXgL2ANRCwJawh0wGPyFytQ+UW7JMS5ZsgpJTzJdDCgaYoDrmGIMVroZhtK9KdmKMIG8BggYqK/k5DH6i1mdod/x0kUN08GthpZo+AlYnSXqudZDtxUv3p4i5q5lH0eo5AWPQjeW3DFKOV1a3tYYSKpbWir/b4eGW3XzXDKpzg4tcMekZ169bzM71LM1fJ42VBSvRSWbsCCyyJOOH7MUCBHCxEDAov5lqjhTULIihLKKl+48QMcBALPOaMvuDey9meuYBUu1Tow4/hw9F1Ay5AIPEy3mLNSmBz04ClbUep+0SkIGt7jnnqewpAKmqiduSNONBR34zxCgy8ciohSXcp4TCOaInLfocuOUVtnDx8S/tRrP0uTTzPZS8W6npRH1enG/mDOS7WV0I5TAXXP/UlppmasVyqXp/Gc0x0LFORNpp5hgniy16caI7Jy/cwYKnsGGU1SnusB+iCxTlTH1lVtd04zB0cswlx5DQRrFzpJQ+CfQ0QlnJIRaCJ2mj6rCd4poqHYqK41ZcrKe6ewU3cIWNz8FnkDu/BC7HqjeXyTMFwgaXjzyXxxwWQ+N8j88bB3BSLqYkHZixnIhIiTiQxYUc8zCQaE7sIboXYis/4JmPUNZk0u0/CzPMFVJKI8T4LBzv9P9jyyb/s70pnMVo+P2QgdDfa6CmjUt7kuhu/pE9T5xahuxjTeoErOz1YlF1eRsJ9nHVPV6QeWy6g62GJweGj5eLICYOiaYZbLwnjS6hHOsB+6YynOd9bQ806U4uZXvAsA81I1WjVuj0Z4SRZdM6+c9bwIrAufFwE0Exk48z1rPM1AMH7JOpaWhvbAtQfS1it4czKanV/7+QcU37mG+M7ifeK/1t47caxAI9vKqw/HDIfUcjwiyF2umWhFspVke68S7vaz8UXvRMC8YQoq3TuakvKkXF7lDtQerM5Apeh233PrAO++mcP7fw==</diagram></mxfile>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 540 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 762 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 280 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 168 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 170 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 661 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 502 KiB

Some files were not shown because too many files have changed in this diff Show more