ANNOUNCEMENT: Live Wireshark University & Allegro Packets online APAC Wireshark Training Session
July 17th, 2024 | 10:00am-11:55am SGT (UTC+8) | Online

Ethereal-dev: Re: [Ethereal-dev] Re: [Ethereal-cvs] rev 17057: /trunk/plugins/lua/: Makefile.a

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

Date: Fri, 20 Jan 2006 12:44:29 +0100
On 1/20/06, Ulf Lamping <ulf.lamping@xxxxxx> wrote:
> LEGO wrote:
> > Hi List,
>
> I'm *very* pleased that you see the benefits of using a "standard"
> scripting language for this task as this will have some obvious benefits.

first It's easier...

> I've heard about lua together with SciTE (http://www.scintilla.org) a
> small text editor before, but I'm really no scripting expert (just doing
> a little python and some bash scripting before).

I find out about lua while trying to get Scite to compile on my mac...
and guess what... I did not make it to have scite running on my mac.

> Just asking why you choose this relative "exotic" language?



> The main disadvantage in my eyes: bindings to advanced features is
> really limited (e.g. networking: sending a ping/mail/...). One of the
> main advantages of scripting languages IMHO is to be able to use such
> advanced features in an quick, easy and platform independent way.

There are libraries with which to add this kind of features to lua, if
they aren't at least it's easy to extend.

I do not know if having a language that can do syscallls embeded into
ethereal would be a good idea. Remember that on linux (AFAIK) if you
want to capture you must be root so adding such features by default
would be like having a setuid shell available to the users.

> I see some other lua disadvantages:
>
> - users must certainly learn a new language (and don't know others to ask)
True, but the the tough one is first language. Once you learned how to
code, do it in another language comes easy. The harsh thing is learn
to code.

OK, there are things like erlang, scheme or lisp that are different in
naure and you need to "think different" to code in them but I see
perl, python and lua as different languages that express preety much
the same concepts.

> - documentation of lua is a bit sparse
There's a brief reference manual: http://www.lua.org/manual/5.0/manual.html
and a more deeper description: http://www.lua.org/pil/
There's not as much stuff as for perl or python but I think it's ok.
> - running the risk that lua will be discontinued
Been OSS I see this risk as futile. As there are a few projects that
use it and the code is out there, someone else would take over.

> Any reasons not using a widely used one, like python, ruby or perl (I
> personally prefer python, but this is obviously based on my personal
> knowledge).

For every answer I looked for while looking into embeding python I got
more questions... It is probably my problem but if I cannot get my
answers I get frustrated after little time.

> On the other hand I understand that there may be good reasons to use a
> relative "exotic" language to simply bring this to life and the binding
> itself seems to be straightforward.

I think "straightforward" is the keyword.

> BTW: Defining a powerful and at the same time simple (scripting) API is
> another (difficult) task which is overall independent of the actually
> chosen scripting language. So having a good scripting binding to lua is
> a good start for other bindings as well :-)

What's there is just a straightforward :-) port of ethereal's C API to
lua. There are some things to fix, and other things (like handling
addresses, oids, filters, tapping and so) that still have to be
analized. For one thing what we have there is the outcome of less tahn
a week of me "playing" with it.

> Anyway, I really appreciate to see that you taken a big step in the
> right direction IMHO.
It's in my very nature to move in many directions, so it's probable I
take rigth ones... and wrong ones as well.


--
This information is top security. When you have read it, destroy yourself.
-- Marshall McLuhan