Persistent VTY history?

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.

Keith keith at rhizomatica.org
Tue Oct 9 12:46:53 UTC 2018


Hi all, thanks for the replies on this thread.

good to see some other people have considered it, and for pretty much
the same reasons it occurred to me.

I tried rlwrap (the readline wrapper) with telnet, and of course it
works, in that you get full readline support with saved history in your
telnet session, on the client/user side) but you lose the [TAB] and [?]
command completion of the vty.

I had a quick go and re-implementing the command completion using an
rlwrap plugin, but my rusty perl skills did not allow me to complete
that quickly, and I felt like whatever I might come up with would be
klunky and hack-ish anyway, but It's probably possible. I think you have
to stop rlwarp from sending a newline along with the command completion
TAB though, and I'm not sure this is doable from the plugin. I'll have
another look if I can find time.

I took a very quick look at zebra, (seems it's using sockets rather than
tcp) and is making full use of readline. I guess a full "command and
control centre" client application for the split osmo stack, might be an
idea, but that's more effort than what I was proposing to do here, but
I'd wonder if maybe a configurable "write history" option is not.

Of course, In my introspective viewpoint, I forgot that the server
doesn't know which user is on the vty, and that there might be multiple
users, I was only thinking of myslef, on my own local box. :/

But for such situations (which are quite common for devs?), would it
make sense, to (as an option) just write the history on client
disconnect to /var/lib/osmocom/[daemon-name].history or something.

I'll take a look at the python vty interact. I haven't looked at it.

Thanks!

k/






More information about the OpenBSC mailing list