[vlc-devel] [PATCH 1/2] cli: remove TCP mode (--rc-host)

Rémi Denis-Courmont remi at remlab.net
Mon Nov 30 17:31:04 CET 2020


Le maanantaina 30. marraskuuta 2020, 5.23.43 EET Pierre Ynard via vlc-devel a 
écrit :
> The original point was to deduplicate the CLI.

Uh, no. The point is to remove RC's TCP mode which is terminally insecure, is 
responsible for a fair bit of ad-hoc code (mostly under _WIN32) and brings no 
functionality not otherwise available (e.g. via HTTP or Telnet).

> A command-line interface is one where you type in lines of text.
> RC from a terminal is one, RC over a socket is one,

Not really. A stream socket just moves streams of bytes. You need some kind of 
protocol to run a CLI over that (e.g., Telnet, SSH).

> Telnet is one, the VLM is one.

There is no "VLM" interface. Telnet is the CLI for VLM.

> There is little point in having several of them in VLC, or scattering and
> segregating pieces of them across competing implementations or different
> channels. So this had all been merged (except for missing Unix sockets)
> in cli.lua, and that was a good goal getting achieved.

I don't see what this rant has to do with this patchset. And I don't think 
that Telnet/VLM should be added to old RC, considering that VLM is effectively 
obsolescent and was enver supported in old RC.

> To answer your questions here, I don't want to keep two CLI
> implementations, and we decided that we preferred the C one, so I don't
> want cli.lua to be kept, and I think it would be terrible to keep it at
> this point.

There was never a decision to get rid of the Telnet interface, to convert it 
back to C, or to add its functionality to old RC.

> > It does not. Not in the C RC interface. And it couldn't be added
> > without breaking compatibility with older versions of its self. And
> > that seems rather obnoxious also. My shell does not tell me about "no
> > errors" for every command.
> 
> I'll include steps to reproduce then, and we can compare if we get
> the same thing. I launch 3.0.11.1 with `vlc -I oldrc --rc-host
> localhost:4212` - that's the C RC interface, right? - then I connect
> with `nc localhost 4212` and type away:
> 
> status
> status change: ( audio volume: 256 )
> status change: ( stop state: 5 )
> status: returned 0 (no error)

Yes okay. Though it always shows 0, because the called function cannot 
propagate errors.

-- 
レミ・デニ-クールモン
http://www.remlab.net/





More information about the vlc-devel mailing list