commit | c0a1c8a0ecc55aef54e6f44ea89a4dd232e265a2 | [log] [tgz] |
---|---|---|
author | Iwona Klimaszewska <iwona.klimaszewska@intel.com> | Fri Jul 12 18:26:38 2019 +0200 |
committer | Iwona Klimaszewska <iwona.klimaszewska@intel.com> | Thu Nov 21 13:35:56 2019 +0000 |
tree | 601c03c2976c4ffaab6ee62c4c8af38743d415e4 | |
parent | e6604b116afef4cd603956941e299e7bcda4351a [diff] |
Implement nbd-proxy as a part of bmcweb Nbd-proxy is responsible for exposing websocket endpoint in bmcweb. It matches WS endpoints with unix socket paths using configuration exposed on D-Bus by Virtual-Media. Virtual-Media is then notified about unix socket availability through mount/unmount D-Bus methods. Currently, this feature is disabled by default. Tested: Integrated with initial version of Virtual-Media. Change-Id: I9c572e9841b16785727e5676fea1bb63b0311c63 Signed-off-by: Iwona Klimaszewska <iwona.klimaszewska@intel.com> Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@intel.com>
This component attempts to be a "do everything" embedded webserver for openbmc.
At this time, the webserver implements a few interfaces:
BMCWeb is configured by setting -D
flags that correspond to options in bmcweb/CMakeLists.txt
and then compiling. For example, cmake -DBMCWEB_ENABLE_KVM=NO ...
followed by make
. The option names become C++ preprocessor symbols that control which code is compiled into the program.
When BMCWeb starts running, it reads persistent configuration data (such as UUID and session data) from a local file. If this is not usable, it generates a new configuration.
When BMCWeb SSL support is enabled and a usable certificate is not found, it will generate a self-sign a certificate before launching the server. The keys are generated by the prime256v1
algorithm. The certificate
C=US, O=OpenBMC, CN=testhost
,SHA-256
algorithm.