New issue
Advanced search Search tips

Issue 790878 link

Starred by 4 users

Issue metadata

Status: Fixed
Owner:
Closed: Feb 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Implement vsock remote shell

Project Member Reported by smbar...@chromium.org, Dec 1 2017

Issue description

A vsock-based remote shell will allow spawning a shell in the VM/container.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/8cec3120bad4208559a7f8b2cbc051c44978db20

commit 8cec3120bad4208559a7f8b2cbc051c44978db20
Author: Mike Frysinger <vapier@chromium.org>
Date: Tue Dec 05 00:19:14 2017

nassh: crosh: finish localizing messages

We also use the opportunity to stop hardcoding "crosh" in the messages
and switch to the commandName member.  This will make future extensions
easier on us.

BUG= chromium:790878 

Change-Id: I7bfcb6bc9b6455955e2244c5511fc77609ddfec6
Reviewed-on: https://chromium-review.googlesource.com/804334
Reviewed-by: Brandon Gilmore <varz@google.com>
Tested-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/8cec3120bad4208559a7f8b2cbc051c44978db20/nassh/_locales/en/messages.json
[modify] https://crrev.com/8cec3120bad4208559a7f8b2cbc051c44978db20/nassh/js/crosh.js

Project Member

Comment 2 by bugdroid1@chromium.org, Dec 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/c3ac5b68a507a80bc4b10e956e4bd28b4f3eaf9e

commit c3ac5b68a507a80bc4b10e956e4bd28b4f3eaf9e
Author: Mike Frysinger <vapier@chromium.org>
Date: Tue Dec 05 00:23:50 2017

libdot: parseQuery: support arrays

Various frameworks use "[]" at the end of the name to indicate it's
an element in an array and automatically build it up.

BUG= chromium:790878 

Change-Id: I148141eaaba3e91ffac01cb69778fbf3192215e1
Reviewed-on: https://chromium-review.googlesource.com/804640
Reviewed-by: Brandon Gilmore <varz@google.com>
Tested-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/c3ac5b68a507a80bc4b10e956e4bd28b4f3eaf9e/libdot/js/lib_f_tests.js
[modify] https://crrev.com/c3ac5b68a507a80bc4b10e956e4bd28b4f3eaf9e/libdot/js/lib_f.js

Project Member

Comment 3 by bugdroid1@chromium.org, Feb 3 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/6a6f702156adffcc3d56b736e29362dbc639fa7b

commit 6a6f702156adffcc3d56b736e29362dbc639fa7b
Author: Stephen Barber <smbarber@chromium.org>
Date: Sat Feb 03 10:37:50 2018

vm_tools: add vsh/vshd to ebuild

BUG= chromium:790878 
TEST=use vsh to connect to tatl
CQ-DEPEND=CL:826693

Change-Id: Ic23eb59cadbf2fd6ec85ceaf75b7848e55083f7a
Reviewed-on: https://chromium-review.googlesource.com/826409
Commit-Ready: Stephen Barber <smbarber@chromium.org>
Tested-by: Stephen Barber <smbarber@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>

[modify] https://crrev.com/6a6f702156adffcc3d56b736e29362dbc639fa7b/chromeos-base/vm_tools/vm_tools-9999.ebuild

Project Member

Comment 4 by bugdroid1@chromium.org, Feb 3 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/fb53e8287a6e8a3214bbc74d79c69071f35f731f

commit fb53e8287a6e8a3214bbc74d79c69071f35f731f
Author: Stephen Barber <smbarber@chromium.org>
Date: Sat Feb 03 10:37:48 2018

vm_tools: vsh: add vsh remote shell

Add a vsock-based remote shell.

BUG= chromium:790878 
TEST=connect to tatl over vsh
CQ-DEPEND=CL:826409,CL:889918

Change-Id: I38a4a86e57f8fb3f06411c41561b212705c4021a
Reviewed-on: https://chromium-review.googlesource.com/826693
Commit-Ready: Stephen Barber <smbarber@chromium.org>
Tested-by: Stephen Barber <smbarber@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>

[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/host.gypi
[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vm_tools.gyp
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/scoped_termios.h
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/utils.h
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/proto/vsh.proto
[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/proto/common.proto
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/scoped_termios.cc
[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/README.md
[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/common/constants.h
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/vshd.cc
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/utils.cc
[add] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/vsh/vsh.cc
[modify] https://crrev.com/fb53e8287a6e8a3214bbc74d79c69071f35f731f/vm_tools/guest.gypi

Project Member

Comment 5 by bugdroid1@chromium.org, Feb 3 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/5d120f9b4dc9acdd25b9f2c6e4caa516eac00143

commit 5d120f9b4dc9acdd25b9f2c6e4caa516eac00143
Author: Stephen Barber <smbarber@chromium.org>
Date: Sat Feb 03 10:37:49 2018

vm_tools: maitred: enable vshd at boot

BUG= chromium:790878 
TEST=vsh to a tatl image
CQ-DEPEND=CL:826409

Change-Id: I438d2b43739d29cdba3ec6ad314cbcaecb04740a
Reviewed-on: https://chromium-review.googlesource.com/826694
Commit-Ready: Stephen Barber <smbarber@chromium.org>
Tested-by: Stephen Barber <smbarber@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>

[modify] https://crrev.com/5d120f9b4dc9acdd25b9f2c6e4caa516eac00143/vm_tools/maitred/init.cc

Project Member

Comment 6 by bugdroid1@chromium.org, Feb 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform2/+/2dfc026f850825e25d48fd85368d8d279aef51f7

commit 2dfc026f850825e25d48fd85368d8d279aef51f7
Author: Stephen Barber <smbarber@chromium.org>
Date: Sun Feb 04 10:26:47 2018

vm_tools: vsh: add support for running commands

BUG= chromium:790878 
TEST=vsh --command="ifconfig"

Change-Id: I18a0181f539a32d1e2ff0db50a10c8a2d6774872
Reviewed-on: https://chromium-review.googlesource.com/898400
Commit-Ready: Stephen Barber <smbarber@chromium.org>
Tested-by: Stephen Barber <smbarber@chromium.org>
Reviewed-by: Stephen Barber <smbarber@chromium.org>

[modify] https://crrev.com/2dfc026f850825e25d48fd85368d8d279aef51f7/vm_tools/vsh/vsh.cc
[modify] https://crrev.com/2dfc026f850825e25d48fd85368d8d279aef51f7/vm_tools/proto/vsh.proto
[modify] https://crrev.com/2dfc026f850825e25d48fd85368d8d279aef51f7/vm_tools/vsh/vshd.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/168e4567f5aa6238338984fef226ca8c0078c335

commit 168e4567f5aa6238338984fef226ca8c0078c335
Author: Mike Frysinger <vapier@chromium.org>
Date: Fri Feb 09 22:43:31 2018

terminalPrivate: extend API to take program arguments

Extend the terminalPrivate.openTerminalProcess JS API to take an
optional array of arguments to the program.  For crosh, we'll not
allow this so people can't pass random flags to it.

Refactor process proxy classes to take a base::CommandLine directly
instead of just an argv[0].

Bug:  790878 
Change-Id: I598e9a02e292789eb4bd71998bed6d9e6f92e717
Reviewed-on: https://chromium-review.googlesource.com/803940
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Alexander Alekseev <alemate@chromium.org>
Reviewed-by: Toni Barzic <tbarzic@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535859}
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chrome/browser/extensions/api/terminal/terminal_private_api.cc
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chrome/browser/extensions/api/terminal/terminal_private_api.h
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chrome/common/extensions/api/terminal_private.json
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chromeos/process_proxy/process_proxy.cc
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chromeos/process_proxy/process_proxy.h
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chromeos/process_proxy/process_proxy_registry.cc
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chromeos/process_proxy/process_proxy_registry.h
[modify] https://crrev.com/168e4567f5aa6238338984fef226ca8c0078c335/chromeos/process_proxy/process_proxy_unittest.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9eebdd3f14556105bba42fb6c0d566d4b1b24366

commit 9eebdd3f14556105bba42fb6c0d566d4b1b24366
Author: Mike Frysinger <vapier@chromium.org>
Date: Fri Feb 09 23:25:30 2018

terminalPrivate: add support for launching VM shells

Add a new "vmshell" process which runs /usr/bin/vsh and allows people
to pass in command line arguments (which it will validate).

Bug:  790878 
Change-Id: I253614e9f2b8c7fb5fa5edafc73701a8dc8c0ad7
Reviewed-on: https://chromium-review.googlesource.com/803941
Commit-Queue: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Toni Barzic <tbarzic@chromium.org>
Reviewed-by: Alexander Alekseev <alemate@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535878}
[modify] https://crrev.com/9eebdd3f14556105bba42fb6c0d566d4b1b24366/chrome/browser/extensions/api/terminal/terminal_private_api.cc
[modify] https://crrev.com/9eebdd3f14556105bba42fb6c0d566d4b1b24366/chrome/common/extensions/api/terminal_private.json

Components: OS>Systems>Containers
Project Member

Comment 10 by bugdroid1@chromium.org, Feb 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/89caa16ba8962e8e3a5f862121acce0f3267c4a3

commit 89caa16ba8962e8e3a5f862121acce0f3267c4a3
Author: Mike Frysinger <vapier@chromium.org>
Date: Fri Feb 16 17:32:43 2018

nassh: crosh: extend for arbitrary commands

This lets people select the command via a command URI option.
The list of supported commands is now centralized in the Chrome
terminalPrivate.openTerminalProcess code.

BUG= chromium:790878 

Change-Id: I018c2c1ad15952be1781081b696ec805709622db
Reviewed-on: https://chromium-review.googlesource.com/804335
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Stephen Barber <smbarber@chromium.org>
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/89caa16ba8962e8e3a5f862121acce0f3267c4a3/nassh/js/crosh.js

Project Member

Comment 11 by bugdroid1@chromium.org, Feb 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/3f809ebe7b6128005b2fb39a4724785ee567efc3

commit 3f809ebe7b6128005b2fb39a4724785ee567efc3
Author: Mike Frysinger <vapier@chromium.org>
Date: Fri Feb 16 17:33:23 2018

nassh: crosh: support passing command line args down

Newer Chrome has an optional 2nd argument for passing in CLI args to
the requested command.  Pass them down as requested.

We leave filtering/sanitizing to the target command.

BUG= chromium:790878 

Change-Id: I0ae5eada42869e97db569bc23b723f5a5cbe935c
Reviewed-on: https://chromium-review.googlesource.com/807359
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Jason Clinton <jclinton@chromium.org>

[modify] https://crrev.com/3f809ebe7b6128005b2fb39a4724785ee567efc3/nassh/doc/hack.md
[modify] https://crrev.com/3f809ebe7b6128005b2fb39a4724785ee567efc3/nassh/js/crosh.js

Status: Fixed (was: Assigned)
Project Member

Comment 13 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/cb6758f30bbd85536e5695c97fd3c81faad7a646

commit cb6758f30bbd85536e5695c97fd3c81faad7a646
Author: Mike Frysinger <vapier@chromium.org>
Date: Wed Mar 14 00:14:51 2018

libdot/nassh: add a lib.f.lastError helper

The lastError is kind of a pain to get to since it's not guaranteed
to be defined, and it might live in different objects depending on
the browser.  Add a helper to hide all this junk and convert all the
existing users over.

BUG= chromium:790878 

Change-Id: Ib06f50e7a684bf67a739e1377cc286e7edd685a0
Reviewed-on: https://chromium-review.googlesource.com/958134
Tested-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Vitaliy Shipitsyn <vsh@google.com>

[modify] https://crrev.com/cb6758f30bbd85536e5695c97fd3c81faad7a646/libdot/js/lib_f_tests.js
[modify] https://crrev.com/cb6758f30bbd85536e5695c97fd3c81faad7a646/libdot/js/lib_f.js
[modify] https://crrev.com/cb6758f30bbd85536e5695c97fd3c81faad7a646/libdot/js/lib_storage_chrome.js
[modify] https://crrev.com/cb6758f30bbd85536e5695c97fd3c81faad7a646/nassh/js/nassh_sftp_fsp.js

Project Member

Comment 14 by bugdroid1@chromium.org, Mar 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/apps/libapps/+/65ae6f2c0b71fc64ab2951e8c146fbe770eccdae

commit 65ae6f2c0b71fc64ab2951e8c146fbe770eccdae
Author: Mike Frysinger <vapier@chromium.org>
Date: Wed Mar 14 00:15:04 2018

nassh: crosh: display errors from terminalPrivate if available

Depending on the failure mode, the browser will pass back up a useful
message.  Pull that out and show it to the user if it exists.

BUG= chromium:790878 

Change-Id: Idc01aed546c3f2236bbd32332a7eb5625fc2f65d
Reviewed-on: https://chromium-review.googlesource.com/958135
Reviewed-by: Vitaliy Shipitsyn <vsh@google.com>
Tested-by: Mike Frysinger <vapier@chromium.org>

[modify] https://crrev.com/65ae6f2c0b71fc64ab2951e8c146fbe770eccdae/nassh/_locales/en/messages.json
[modify] https://crrev.com/65ae6f2c0b71fc64ab2951e8c146fbe770eccdae/nassh/js/crosh.js

Sign in to add a comment