Nmap Development mailing list archives

Re: GSoC Proposal: Nmap on Maemo/ Symbian


From: Sukhbir Singh <singheinstein () gmail com>
Date: Tue, 23 Mar 2010 16:59:11 +0530

Hello Fyodor and everyone,

As for Symbian, that might make a great mobile target.  Wikipedia's
Symbian OS article claism that it is "the world's most popular mobile
operating system", shipping on 46.9% of smartphones.  I'm not sure how
true or recent that is, and I'm not sure how much of a future Symbian
has.  I doubt Nokia wants to maintain very many mobile operating
systems, and their flagship N900 runs Maemo (soon to be MeeGo).
Still, it may be very nice to have Nmap on Symbian.  I'm not sure how
much work there has been on that to date.


I don't think that Symbian is going to fade out that quickly. After all,
Symbian is used on a lot of smartphones including the Nokia business series
phones (E series). Have a look at [1]. A quick Google search showed that no
work has been done for Nmap on Symbian.

As for a Qt port of Zenmap, a big issue is that we only want to
maintain one codebase.  Currently we use the same core Zenmap code for
Linux, Windows, and Mac because we only use cross-platform
dependencies (GTK, Python, etc.) and we pull those in on each
platform.  So we're not going to maintain both Qt and GTK versions of
Zenmap.  I suppose we could change Zenmap to use Qt rather than GTK on
all platforms, but that would be a lot of work and risk and so there
would have to be extremely compelling reasons to do so (not just to
make it work better on Symbian).  So it may be best to try and figure
out how you can make GTK and the other Zenmap dependencies work well
on Symbian.


I am aware of the Zenmap PyGTK requirement. A couple of quick points I will
make in this regard:

1. There is no port of the GTK+ toolkit on the Symbian platform. Qt/ C++ is
now used to program for Symbian, earlier it was Symbian C++ but that is no
longer preferred. So if we stick with GTK+, we have to rule out the Symbian
port.

2. However, if we were to use Qt, we would have two ports (actually three,
continue reading) in the three months time period - for Symbian and Maemo
both.

Another interesting positive side effect (the third port) of this would be
that there would be a proper KDE front end for Nmap. The only one was: KNmap
[2], but that was last updated in 2006 and uses Qt 2.3 (latest is 4.6) Now
if we were to say that Symbian might fade away, KDE surely won't :)

So effectively, I would be writing one code for three platforms to start
with, not to mention the other platforms that are supported by Qt. [3]

Also, if you are looking to port Nmap to different mobile platforms, there
has to be a deviation from the 'one code' base. Like if Nmap is to be ported
to Android, Java would be used, for iPhone, Objective C. But I think in the
case of Qt, the shift would be worth it.

I suppose we could change Zenmap to use Qt rather than GTK on
all platforms, but that would be a lot of work and risk and so there
would have to be extremely compelling reasons to do so (not just to
make it work better on Symbian).


For GNOME users, PyGTK (Zenmap) works well enough, I have no intentions to
change that.

I am ready to maintain the Qt code base even after GSoC if the maintenance
part is a problem. I won't run away after GSoC, working with Nmap would be
pretty awesome for me!

Inputs are appreciated.

References:

[1] http://en.wikipedia.org/wiki/Nokia_S60_and_Symbian_OS
[2] http://pages.infinit.net/rewind/
[3] http://qt.nokia.com/doc/4.6/supported-platforms.html

CC: Fyodor, nmap-dev, soc

--
Sukhbir Singh
_______________________________________________
Sent through the nmap-dev mailing list
http://cgi.insecure.org/mailman/listinfo/nmap-dev
Archived at http://seclists.org/nmap-dev/


Current thread: