Hi Dieter,
Thanks for your response. So here is what I propose.
As I understand you are willing to donate the simple telnet code
described in [1] to the Apache Felix project. To get around the
licensing cliffs, we need to follow a few steps:
* First I suggest you create a JIRA and attach the source
code (including the correct Apache License file header)
* Second, your CLA has to be on file with the ASF (see [2])
* Third, we would have to file an Incubator IP Clearance for
this code (don't worry, we at Apache Felix would have to
take care of this), see also [3] FYI
I think for the simple remote shell bundle, this should be enough.
If you decide to donate the full telnetd bundle to Apache Felix, we
would also need a software grant (see [4]). Otherwise a JIRA is required
to provde the code and the IP Clearance is required for tracking the
process.
WDYT ?
Regards
Felix
PS: Including Doug Lea's classes should not be a problem. He does not
even require attribution.
[1] http://markmail.org/message/baevm7zigxzten36
[2] http://www.apache.org/licenses/#clas
[3] http://incubator.apache.org/ip-clearance/index.html
[4] http://www.apache.org/licenses/#grants
Dieter Wimberger schrieb:
Hi all,
I'll try to get through step by step.
Rob:
Embedded, probably. Would need to check if I used any API (net, io)
that's >= 1.3.
Felix:
Sure. The idea was from the beginning to provide felix (project) with
the functionality of a remote shell access.
There are only two classes in the telnetconsole bundle that I didn't
write myself: a Latch and a ReentrantLock; however they are actually
code that has been placed in the public domain by Doug Lea (from
Concurrent Programming in Java, which actually was the foundation for
all the java.util.concurrent).
Could there be any conflict releasing these in a package with Apache 2
License?
Also, something has to be done about logging and about having this build
with Maven (I am currently building this with my own relatively generic
ant script).
Craig:
See my answer to Felix (M.); I'll try to put up the sources asap so you
can poke around. Don't get too excited though; the essential part is:
ShellService.executeCommand(line, out, out);
Where line is the input from the client, and out is essentially a
PrintStream that prints to the OutputStream corresponding to the socket.
When it comes to the telnetd-osgi bundle, I have also experienced some
problems in the Felix container; in particular stopping the bundle and
then starting it seems to lead to unexpected results when trying to
connect to it (i.e. the connection fails completely and there are some
NPE's); I am still investigating why (may also be due to something in
the SSH library, so it's not so easy to track down maybe).
I haven't experienced the shutdown problem in the telnetconsole, though.
Currently I am running it ontop of felix 1.0.4 without much in it:
[ 0] [Active ] [ 0] System Bundle (1.0.4)
[ 1] [Active ] [ 1] OSGi R4 Compendium Bundle (4)
[ 2] [Active ] [ 1] Apache Felix Shell Service (1.0.1)
[ 3] [Active ] [ 1] Apache Felix Shell TUI (1.0.1)
[ 4] [Active ] [ 1] Apache Felix Bundle Repository (1.0.3)
[ 5] [Active ] [ 1] Apache Felix Telnet Management Console (1.0)
Richard:
Honestly, I actually put together the telnetconsole bundle because I
didn't want to "cripple" telnetd-osgi into something that's no longer
useful for a generic purpose. E.g. trying to figure a way around
installing the configadmin bundle just doesn't make much sense to me
when you need to configure it anyway.
So here is what I suggest:
1. get the telnetconsole bundle into Felix (project):
This should be straigthforward, but see the comments I made to Felix (M.).
2. iron out the problems with the telnetd-osgi and figure a way to have
some of the extensions (I am using the templates extensively to generate
output on a shell).
There is still the possibility to have it inside or outside of Felix
(project).
From my point of view, I would at least suggest not to try and
"cripple" it (i.e. this translates into: I won't do it, but the code is
open source, and available since more or less 2 years, so anybody is
welcome ;).
3. provide the glue bundle I wrote (essentially a shell that is hooked
into telnetd-osgi).
This should rather be part of Felix (project). There is only my own
source and all it needs is some Maven magic to build it "the Felix way".
Feedback is welcome as always.
Regards,
Dieter