b7dddbc6 | 27-Mar-2024 |
Andrew Geissler <geissonator@yahoo.com> |
obmc-console-ssh@.service: add ECDSA and ED25519 keys
With RSA-SHA1 being deprecated, have our dropbear server also support ECDSA and ED25519 keys.
The key generation and support within our standar
obmc-console-ssh@.service: add ECDSA and ED25519 keys
With RSA-SHA1 being deprecated, have our dropbear server also support ECDSA and ED25519 keys.
The key generation and support within our standard ssh port 22 was added via commit [1].
This commit adds support for our virtual console ports that come in via ssh.
The service files have a somewhat unfortunately named variable, DROPBEAR_RSAKEY_DIR, which assumed dropbear was only going to support RSA keys. As this commit shows, dropbear supports multiple key types and the directory, /etc/dropbear/, has no limitations on the type of key that can go in that directory. Initially, we changed this variable name to DROPBEAR_KEY_DIR but upon further investigation we saw that this naming convention was utilized heavily in the dropbear recipes. To keep things consistent with dropbear, we left it as DROPBEAR_RSAKEY_DIR even though other key types will be stored in that directory.
Tested: - Confirmed port 2200 and 2201 dropbear services loaded new RSA keys (via 'ps' command) on p10bmc machine - Confirmed when an ssh was done to port 2200, it connected, properly and listed the following as supported via "ssh -vv": host key algorithms: ssh-ed25519,ecdsa-sha2-nistp384,rsa-sha2-256
[1]: https://gerrit.openbmc.org/c/openbmc/openbmc/+/70265
Change-Id: I76dd742654a67645d12856ae8fd15dfe71876b9d Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
7f2bfb9b | 11-Mar-2024 |
Medicine Yeh <medicinehy@gmail.com> |
config: add ringbuffer-size in config file options
Enable fine-tuning the memory usage by assigning ringbuffer size by setting ringbuffer-size in the config file.
Change-Id: I2425e4297aadbb528598ac
config: add ringbuffer-size in config file options
Enable fine-tuning the memory usage by assigning ringbuffer size by setting ringbuffer-size in the config file.
Change-Id: I2425e4297aadbb528598ac9bc80840774a117a03 Signed-off-by: Medicine Yeh <medicinehy@gmail.com>
show more ...
|
d6e8b64a | 18-Mar-2024 |
Medicine Yeh <medicinehy@gmail.com> |
config: rename parse_logsize to be more generic
Rename config_parse_logsize to config_parse_bytesize. A more generic name allows this function to be reused in other config parsing purposes.
Change-
config: rename parse_logsize to be more generic
Rename config_parse_logsize to config_parse_bytesize. A more generic name allows this function to be reused in other config parsing purposes.
Change-Id: I3036c184669be17ddc0d194f275ea05d871341d1 Signed-off-by: Medicine Yeh <medicinehy@gmail.com>
show more ...
|
bd4af900 | 12-Feb-2024 |
Andrew Geissler <geissonator@yahoo.com> |
80-obmc-console-uart.rules: fix udevadm warnings
Without this change we get the following warnings: ``` udevadm verify
/usr/lib/udev/rules.d/80-obmc-console-uart.rules:1 style: a comma between toke
80-obmc-console-uart.rules: fix udevadm warnings
Without this change we get the following warnings: ``` udevadm verify
/usr/lib/udev/rules.d/80-obmc-console-uart.rules:1 style: a comma between tokens is expected. /usr/lib/udev/rules.d/80-obmc-console-uart.rules:2 style: a comma between tokens is expected. /usr/lib/udev/rules.d/80-obmc-console-uart.rules: udev rules have style issues.
41 udev rules files have been checked. Success: 40 Fail: 1 ```
Tested: - Confirmed 'udevadm verify' returns no warnings
Change-Id: Ic1e1ddd212619fa5c9666adeb268bcfb60b0fb3a Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
show more ...
|
66ddf711 | 21-Dec-2023 |
Andrew Jeffery <andrew@aj.id.au> |
OWNERS: Update Andrew's preferred email
We're having some grief with non-preferred emails in Gerrit[1]. I now prefer project-related content goes to my work email address, so use my non-preferred em
OWNERS: Update Andrew's preferred email
We're having some grief with non-preferred emails in Gerrit[1]. I now prefer project-related content goes to my work email address, so use my non-preferred email to implement the switch.
[1]: https://issues.gerritcodereview.com/issues/317345953
Change-Id: I136e0bf66a43e830134cc2a8065e4b93edd523ed Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
3453084b | 20-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
clang-format: copy latest and re-format
Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I5ffeeb2852dd6cc5bab2b407afdbb307414033b6 Signed-off-by: Patri
clang-format: copy latest and re-format
Copy the latest .clang-format from the docs repository and reformat the repository.
Change-Id: I5ffeeb2852dd6cc5bab2b407afdbb307414033b6 Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
bae933a7 | 24-Oct-2023 |
Patrick Williams <patrick@stwcx.xyz> |
meson: rename options file
Meson supports the options being in a `meson.options` instead of a generic text file so leverage this option. Use of `meson.options` requires at least meson v1.1.0, but th
meson: rename options file
Meson supports the options being in a `meson.options` instead of a generic text file so leverage this option. Use of `meson.options` requires at least meson v1.1.0, but that in turn yields an issue with the options file:
``` meson.options:2: WARNING: Project targets '>=1.1.0' but uses feature deprecated since '1.1.0': "boolean option" keyword argument "value" of type str. use a boolean, not a string ```
Fix all of these issues together.
Change-Id: Idebe8f5ccd2d7ba2dbb0a45a274deac0c1fd327d Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
show more ...
|
955d140e | 27-Sep-2023 |
Oskar Senft <osk@google.com> |
console-server: Fix config of lpc_address and sirq sysfs attributes
This change fixes console-server to correctly configure lpc_address and sirq for VUART devices. It modifies tty_find_device to sto
console-server: Fix config of lpc_address and sirq sysfs attributes
This change fixes console-server to correctly configure lpc_address and sirq for VUART devices. It modifies tty_find_device to store the tty_sysfs_devnode path in the new console->tty.vuart.sysfs_devnode as introduced by commit 30ea6385df2d7c6db6954d41555d667d509ba873.
Tested: Manually modified the lpc_address and sirq sysfs attributes, then restarted obmc-console-server. Checked that lpc_address and sirq got configured to the values from the obmc-console confiugration file.
Fixes: 30ea6385df2d ("console-server: Add PTY support for testing purposes") Change-Id: I10b715690d428722f772245618d8aa6f928154f6 Signed-off-by: Oskar Senft <osk@google.com>
show more ...
|
a2a026dc | 26-Sep-2023 |
Willy Tu <wltu@google.com> |
ssh: Service don't depends on concurrent-servers
Install the service files even with `concurrent-servers` enabled. This will match the behavior before https://gerrit.openbmc.org/c/openbmc/obmc-conso
ssh: Service don't depends on concurrent-servers
Install the service files even with `concurrent-servers` enabled. This will match the behavior before https://gerrit.openbmc.org/c/openbmc/obmc-console/+/66418
Change-Id: If539b099185974a2546249b40bc4c97968f1a206 Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
2a5fface | 31-Aug-2023 |
Willy Tu <wltu@google.com> |
obmc-console-ssh: Add feature behind an option flag
Allow us to disable obmc-console-ssh if it is not needed. Default to be enabled so there are no functional changes.
Change-Id: I3c83a3102626c5a51
obmc-console-ssh: Add feature behind an option flag
Allow us to disable obmc-console-ssh if it is not needed. Default to be enabled so there are no functional changes.
Change-Id: I3c83a3102626c5a511cae14c18ed284af6078edd Signed-off-by: Willy Tu <wltu@google.com>
show more ...
|
7dc08baa | 12-Sep-2023 |
Zev Weiss <zev@bewilderbeest.net> |
config: Add support for aspeed-uart-routing config directive
It accepts one or more words of the form SINK:SOURCE, where SOURCE is written to the file SINK in the aspeed-uart-routing driver's sysfs
config: Add support for aspeed-uart-routing config directive
It accepts one or more words of the form SINK:SOURCE, where SOURCE is written to the file SINK in the aspeed-uart-routing driver's sysfs directory (they are thus expected to be things like "uart1", "uart2", "io1", etc.).
Signed-off-by: Zev Weiss <zev@bewilderbeest.net> Change-Id: Iacbc524340e4b73f3d122bc77670eedb3957a858
show more ...
|
acefe010 | 12-Sep-2023 |
Zev Weiss <zev@bewilderbeest.net> |
config: Allow multi-word config values
None of the presently existing config keys need it, but in order to support configuring multiple channels of the Aspeed UART-routing mux it will be useful to b
config: Allow multi-word config values
None of the presently existing config keys need it, but in order to support configuring multiple channels of the Aspeed UART-routing mux it will be useful to be able to have multiple (space-separated) words in a config value (whereas previously the value was truncated at the first space). The '#' comment character is respected as terminating the value, however.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net> Change-Id: I2ab6f16efb2f0bed1041d79b1766136df939350d
show more ...
|
35f44fcc | 12-Sep-2023 |
Zev Weiss <zev@bewilderbeest.net> |
config: Use isspace(3) instead of open-coding it
While we're at it, a 'while' loop seems incrementally more readable than a partially-populated 'for' loop with the desired effect in the third clause
config: Use isspace(3) instead of open-coding it
While we're at it, a 'while' loop seems incrementally more readable than a partially-populated 'for' loop with the desired effect in the third clause.
Signed-off-by: Zev Weiss <zev@bewilderbeest.net> Change-Id: I2a1a9b9f6fecc8e24ef7f124b8ac5048f20be3f9
show more ...
|
dfda5afb | 06-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
config: Drop support for the `socket-id` configuration key
9a8f30ec5b58 ("obmc-console: Introduce console-id, deprecate socket-id") replaces the `socket-id` configuration key with a better name. Now
config: Drop support for the `socket-id` configuration key
9a8f30ec5b58 ("obmc-console: Introduce console-id, deprecate socket-id") replaces the `socket-id` configuration key with a better name. Now that we've fixed up all in-tree users in OpenBMC with 7a612d4fa70f ("obmc-console: Convert configs from socket-id to console-id"), drop support for `socket-id`.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ied35025a98db426e27891f32ed4bd661d0edb14c
show more ...
|
ba0a5a74 | 01-Jun-2023 |
Jonathan Doman <jonathan.doman@intel.com> |
Remove deprecated D-Bus interface
9598b866d8e2 ("Add new D-Bus UART interface") adds the interface that's described in phosphor-dbus-interface and deprecates the old interface. Now that the new inte
Remove deprecated D-Bus interface
9598b866d8e2 ("Add new D-Bus UART interface") adds the interface that's described in phosphor-dbus-interface and deprecates the old interface. Now that the new interface is merged, follow through and delete the deprecated interface.
Change-Id: I304041d74a5b2218732b32f915efcbc0a5e9aafe Signed-off-by: Jonathan Doman <jonathan.doman@intel.com> [AJ: Rebase on master and update changelog] Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
db928087 | 06-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
obmc-console: Update version and CHANGELOG for 1.1.0
With a bunch of work merged recently it's time for a tag before we merge some breaking changes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
obmc-console: Update version and CHANGELOG for 1.1.0
With a bunch of work merged recently it's time for a tag before we merge some breaking changes.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I0b54da30da0edec81bc8ed813db938522ebf10e3
show more ...
|
7c02ae1e | 05-Jun-2023 |
Andrew Jeffery <andrew@aj.id.au> |
console-server: Use correct attribute name in VUART test
The test was looking for a sysfs attribute named `lpc_addr`, but the attribute actually exposed is `lpc_address`:
https://git.kernel.org/pub
console-server: Use correct attribute name in VUART test
The test was looking for a sysfs attribute named `lpc_addr`, but the attribute actually exposed is `lpc_address`:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/ABI/stable/sysfs-driver-aspeed-vuart?h=v6.3#n1
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ifaa2687385c53d847d79803a4bb7cf77054a7dde
show more ...
|
9598b866 | 01-Jun-2023 |
Jonathan Doman <jonathan.doman@intel.com> |
Add new D-Bus UART interface
New interface xyz.openbmc_project.Console.UART was added to P-D-I: https://github.com/openbmc/phosphor-dbus-interfaces/blob/3826910ef8f91c05562a716929221745c92dd9d7/yaml
Add new D-Bus UART interface
New interface xyz.openbmc_project.Console.UART was added to P-D-I: https://github.com/openbmc/phosphor-dbus-interfaces/blob/3826910ef8f91c05562a716929221745c92dd9d7/yaml/xyz/openbmc_project/Console/UART.interface.yaml
Tested: With obmc-console@ttyS2: bmc# alias xyz=xyz.openbmc_project; alias XYZ=/xyz/openbmc_project bmc# stty -F /dev/ttyS2 speed 921600 bmc# busctl introspect $xyz.Console.default $XYZ/console/default $xyz.Console.UART NAME TYPE SIGNATURE RESULT/VALUE FLAGS .Baud property t 921600 writable
bmc# busctl set-property $xyz.Console.default $XYZ/console/default \ $xyz.Console.UART Baud t 57600 bmc# stty -F /dev/ttyS2 speed 57600
bmc# busctl set-property $xyz.Console.default $XYZ/console/default \ $xyz.Console.UART Baud t 57601 Failed to set property Baud on interface xyz.openbmc_project.Console.UART: Invalid argument
Change-Id: I055f2a95c515636b38a694bf565b71aa648fe7b7 Signed-off-by: Jonathan Doman <jonathan.doman@intel.com>
show more ...
|
bd992c9f | 09-May-2023 |
Ninad Palsule <ninadpalsule@us.ibm.com> |
Add Connect() method to console DBUS object
Added new poller and consumer for the console DBUS data.
Note: We initially developed SocketName attribute but it is now deprecated/removed.
The t
Add Connect() method to console DBUS object
Added new poller and consumer for the console DBUS data.
Note: We initially developed SocketName attribute but it is now deprecated/removed.
The tree of default object: $ busctl tree xyz.openbmc_project.Console.default `-/xyz `-/xyz/openbmc_project `-/xyz/openbmc_project/console `-/xyz/openbmc_project/console/default
The introspect of default console: $ busctl introspect xyz.openbmc_project.Console.default /xyz/openbmc_project/console/default NAME TYPE SIGNATURE RESULT/VALUE FLAGS org.freedesktop.DBus.Introspectable interface - - - .Introspect method - s - org.freedesktop.DBus.Peer interface - - - .GetMachineId method - s - .Ping method - - - org.freedesktop.DBus.Properties interface - - - .Get method ss v - .GetAll method s a{sv} - .Set method ssv - - .PropertiesChanged signal sa{sv}as - - xyz.openbmc_project.Console.Access interface - - - .Connect method - h - xyz.openbmc_project.console interface - - - .setBaudRate method u x - .baudrate property u 0 -
Tested: Performed integration testing with bmcweb.
Change-Id: I2444b1083cf26536f43c6f6b4b0857a2921c4f78 Signed-off-by: Ninad Palsule <ninadpalsule@us.ibm.com>
show more ...
|
5ba20b5b | 12-May-2023 |
Ninad Palsule <ninadpalsule@us.ibm.com> |
obmc-console: Consolidate handling of default socket-id
If console-id is not specified on command line or in the config file then use the default value. ae2460d0b8e8 ("obmc-console: Provide a defaul
obmc-console: Consolidate handling of default socket-id
If console-id is not specified on command line or in the config file then use the default value. ae2460d0b8e8 ("obmc-console: Provide a default value for `console-id`.") only implemented the default value for naming the abstract listening socket and overlooked the new DBus path naming convention. This caused issues during dbus registration:
``` obmc-console-server: Object name: /xyz/openbmc_project/console/(null) obmc-console-server: Failed to issue method call: Invalid argument ```
Fixes: ae2460d0b8e8 ("obmc-console: Provide a default value for `console-id`.") Change-Id: I6d0f7b23cc085992189cd4463129a6aae590b3e7 Signed-off-by: Ninad Palsule <ninadpalsule@us.ibm.com> Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
show more ...
|
4e44c790 | 12-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest
clang-format: copy latest and re-format
clang-format-16 has some backwards incompatible changes that require additional settings for best compatibility and re-running the formatter. Copy the latest .clang-format from the docs repository and reformat the repository.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I1617773783af90585a0ff753b6fa548d614f4d09
show more ...
|
ae2460d0 | 09-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
obmc-console: Provide a default value for `console-id`.
4e7186918599 ("Fixed broken dbus interface for multiple consoles") introduced the requirement that `console-id` be specified in the configurat
obmc-console: Provide a default value for `console-id`.
4e7186918599 ("Fixed broken dbus interface for multiple consoles") introduced the requirement that `console-id` be specified in the configuration files for both the client and server. It was paired with a fix to platform configurations in the OpenBMC bitbake metadata[1]. In theory this should have worked, but because specifying `console-id` wasn't a requirement, not all platforms supplied a client configuration. Instead they relied on the default behaviour.
[1]: https://gerrit.openbmc.org/c/openbmc/openbmc/+/62712
Remove the requirement that a `console-id` be specified and instead provide a default value that can be overridden by configuration. This carries forward the consequence from 4e7186918599 ("Fixed broken dbus interface for multiple consoles") that the original `\0obmc-console` abstract socket will never be created. This doesn't resolve the break in ipmid or bmcweb, but resolves the break to SSH-based SOL on platforms not supplying client configuration files for one of their consoles.
The fix to bmcweb (whose strategy can also be applied to ipmid) is currently being prototyped[2].
[2]: https://discord.com/channels/775381525260664832/1083551792094249051/1103867159412752424
A deeper treatment of the problems, impacts, and solutions is provided in [3].
[3]: https://amboar.github.io/notes/2023/05/08/happenings-in-obmc-console.html
Fixes: 4e7186918599 ("Fixed broken dbus interface for multiple consoles") Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I970578f1b695f729f6524c4da6bba6e89bf14d52
show more ...
|
ba2af969 | 02-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
console-server: Don't require a configuration file
Not requiring a configuration file makes it marginally less irritating to test obmc-console-server.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au
console-server: Don't require a configuration file
Not requiring a configuration file makes it marginally less irritating to test obmc-console-server.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ibdf898933284bb4028861d25640bea3c58fb05bf
show more ...
|
954be0fb | 03-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
console-server: Add --console-id option
Allow specification of the console-id on the command-line. Specification on the command line takes precedence over the value in the configuration file.
Signe
console-server: Add --console-id option
Allow specification of the console-id on the command-line. Specification on the command line takes precedence over the value in the configuration file.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: Ia143e997b9f5386493564aa92e44e2813173e238
show more ...
|
9a8f30ec | 01-May-2023 |
Andrew Jeffery <andrew@aj.id.au> |
obmc-console: Introduce console-id, deprecate socket-id
The name `socket-id` exposes too much detail about the implementation. Really the tag identifies the console, so name it as such.
Maintain ba
obmc-console: Introduce console-id, deprecate socket-id
The name `socket-id` exposes too much detail about the implementation. Really the tag identifies the console, so name it as such.
Maintain backwards compatibility until we've converted all the in-tree OpenBMC users over to `console-id`. Once that's done we can drop support for `socket-id`.
Signed-off-by: Andrew Jeffery <andrew@aj.id.au> Change-Id: I5aa2ba84835d64901e459b42bfe7be59043466c7
show more ...
|