[jitsi-dev] Moving forward with ice4j


#1

Hello

Over the past few days and weeks I was working on getting ice4j to use the
free, Apache 2 licensed, implementation of the javax.sdp API that Daniel
Pocock developed [1].

The problem with the SDP API, apart from the licensing, is that the jsip
project got sloppy. The API definitions include references to the NIST
reference implementation. It primarily affects the SdpFactory class.

I created a "bridge" package that implements the free SdpFactory by
constructing objects of the NIST RI [2]. This is currently a separate
project that could live at Opentelecoms, at Jitsi or couble be bundled into
a custom build of jsip ([3] which is anyway necessary to remove the non-free
API code). But no matter which way we're choosing, it will break the
compatibility with the official jsip-builds.

So, to move forward, my plan is:
- Working with Daniel on [4]
- Find a suitable home for the "bridge" [2]
- Publish the custom jain-sip (including or separately the "bridge") on
Maven Central
- Build ice4j against these free components [5]
- Use the new weupnp-0.1.4 configuration options for timeouts instead of a
fork [6]
- Get weupnp updated in Debian
- Get the javax.sdp/javax.sip APIs into Debian
- Get the freed jain-sip into Debian
- Get ice4j into Debian (with all dependencies already being in Debian)

Any comments, please?

Once that's all done, we can move forward with libjitsi.

Ingo

[1] https://github.com/opentelecoms-org/java-sdp-api
[2] https://github.com/ibauersachs/java-sdp-nist-bridge
[3] https://github.com/jitsi/jain-sip/tree/jitsi2
[4] https://github.com/opentelecoms-org/java-sdp-api/pull/2
[5] https://github.com/jitsi/ice4j/tree/dfsg-jsip
[6] https://github.com/bitletorg/weupnp/pull/15


#2

Hey Ingo,

How about just replacing the current implementation in jsip? I am
CCing Ranga and Jean in case they have an opinion on the matter.

While not a huge issue, the licensing problem with SDP there seems to
popup every now and then so maybe it would make sense to just fix it
once and for all.

Emil

···

On Tue, Nov 3, 2015 at 4:52 PM, Ingo Bauersachs <ingo@jitsi.org> wrote:

Hello

Over the past few days and weeks I was working on getting ice4j to use the
free, Apache 2 licensed, implementation of the javax.sdp API that Daniel
Pocock developed [1].

The problem with the SDP API, apart from the licensing, is that the jsip
project got sloppy. The API definitions include references to the NIST
reference implementation. It primarily affects the SdpFactory class.

I created a "bridge" package that implements the free SdpFactory by
constructing objects of the NIST RI [2]. This is currently a separate
project that could live at Opentelecoms, at Jitsi or couble be bundled into
a custom build of jsip ([3] which is anyway necessary to remove the non-free
API code). But no matter which way we're choosing, it will break the
compatibility with the official jsip-builds.

So, to move forward, my plan is:
- Working with Daniel on [4]
- Find a suitable home for the "bridge" [2]
- Publish the custom jain-sip (including or separately the "bridge") on
Maven Central
- Build ice4j against these free components [5]
- Use the new weupnp-0.1.4 configuration options for timeouts instead of a
fork [6]
- Get weupnp updated in Debian
- Get the javax.sdp/javax.sip APIs into Debian
- Get the freed jain-sip into Debian
- Get ice4j into Debian (with all dependencies already being in Debian)

Any comments, please?

Once that's all done, we can move forward with libjitsi.

Ingo

[1] https://github.com/opentelecoms-org/java-sdp-api
[2] https://github.com/ibauersachs/java-sdp-nist-bridge
[3] https://github.com/jitsi/jain-sip/tree/jitsi2
[4] https://github.com/opentelecoms-org/java-sdp-api/pull/2
[5] https://github.com/jitsi/ice4j/tree/dfsg-jsip
[6] https://github.com/bitletorg/weupnp/pull/15

_______________________________________________
dev mailing list
dev@jitsi.org
Unsubscribe instructions and other list options:
http://lists.jitsi.org/mailman/listinfo/dev

--
https://jitsi.org


#3

Hello

Over the past few days and weeks I was working on getting ice4j to use the
free, Apache 2 licensed, implementation of the javax.sdp API that Daniel
Pocock developed [1].

The problem with the SDP API, apart from the licensing, is that the jsip
project got sloppy. The API definitions include references to the NIST
reference implementation. It primarily affects the SdpFactory class.

I created a "bridge" package that implements the free SdpFactory by
constructing objects of the NIST RI [2]. This is currently a separate
project that could live at Opentelecoms, at Jitsi or couble be bundled into
a custom build of jsip ([3] which is anyway necessary to remove the non-free
API code). But no matter which way we're choosing, it will break the
compatibility with the official jsip-builds.

I would be happy to have that at https://github.com/opentelecoms-org

I would suggest not to put it under https://github.com/jitsi as that may
involve Atlassian CLA issues. Given that other the parts (javax.sdp and
javax.sip) are not under the Atlassian CLA it is probably not helpful
for this part of the code to go that way. Not all potentially
contributors are happy to sign CLAs and given the very general nature of
this code, it is probably good to make it as open as possible to other
contributors.

So, to move forward, my plan is:
- Working with Daniel on [4]

I've added you to the sip-api owners team which gives you access to both
of the existing repositories.

I've also invited Emil to be a member of sip-api owners.

- Find a suitable home for the "bridge" [2]

If you didn't already do this, I can create the repository under
opentelecoms-org and put it under the control of the sip-api owners group.

···

On 03/11/15 23:52, Ingo Bauersachs wrote:

- Publish the custom jain-sip (including or separately the "bridge") on
Maven Central
- Build ice4j against these free components [5]
- Use the new weupnp-0.1.4 configuration options for timeouts instead of a
fork [6]
- Get weupnp updated in Debian
- Get the javax.sdp/javax.sip APIs into Debian
- Get the freed jain-sip into Debian
- Get ice4j into Debian (with all dependencies already being in Debian)

Any comments, please?

Once that's all done, we can move forward with libjitsi.

Ingo

[1] https://github.com/opentelecoms-org/java-sdp-api
[2] https://github.com/ibauersachs/java-sdp-nist-bridge
[3] https://github.com/jitsi/jain-sip/tree/jitsi2
[4] https://github.com/opentelecoms-org/java-sdp-api/pull/2
[5] https://github.com/jitsi/ice4j/tree/dfsg-jsip
[6] https://github.com/bitletorg/weupnp/pull/15


#4

How about just replacing the current implementation in jsip? I am
CCing Ranga and Jean in case they have an opinion on the matter.

While not a huge issue, the licensing problem with SDP there seems to
popup every now and then so maybe it would make sense to just fix it
once and for all.

Two problems:
- The interfaces created by Daniel don't contain any Javadoc. (And simply copying the one currently in jsip would violate copyright again.)
- javax.sdp is a mess. The javax.sdp package (from the JSR) references the NIST impl and fixing this would break the existing API

I know it's a far stretch, but whoever owns the copyright of that javax.sdp interfaces, can't they just release it into the public domain (or some OSI approved license)!?

Emil

Ingo


#5

Over the past few days and weeks I was working on getting ice4j to use

the

free, Apache 2 licensed, implementation of the javax.sdp API that Daniel
Pocock developed [1].

The problem with the SDP API, apart from the licensing, is that the jsip
project got sloppy. The API definitions include references to the NIST
reference implementation. It primarily affects the SdpFactory class.

I created a "bridge" package that implements the free SdpFactory by
constructing objects of the NIST RI [2]. This is currently a separate
project that could live at Opentelecoms, at Jitsi or couble be bundled
into a custom build of jsip ([3] which is anyway necessary to remove
the non- free API code). But no matter which way we're choosing, it
will break the compatibility with the official jsip-builds.

I would be happy to have that at https://github.com/opentelecoms-org

I would suggest not to put it under https://github.com/jitsi as that may
involve Atlassian CLA issues. Given that other the parts (javax.sdp and
javax.sip) are not under the Atlassian CLA it is probably not helpful
for this part of the code to go that way. Not all potentially
contributors are happy to sign CLAs and given the very general nature of
this code, it is probably good to make it as open as possible to other
contributors.

Done.
https://github.com/opentelecoms-org/java-sdp-nist-bridge

So, to move forward, my plan is:
- Working with Daniel on [4]

I've added you to the sip-api owners team which gives you access to both
of the existing repositories.

Thanks. Does that imply that you're okay with the proposed changes to the
API in this pull request?
https://github.com/opentelecoms-org/java-sdp-api/pull/2

I've also invited Emil to be a member of sip-api owners.

- Find a suitable home for the "bridge" [2]

If you didn't already do this, I can create the repository under
opentelecoms-org and put it under the control of the sip-api owners group.

I transferred the repository, so no need for that.

- Publish the custom jain-sip (including or separately the "bridge") on
Maven Central
- Build ice4j against these free components [5]
- Use the new weupnp-0.1.4 configuration options for timeouts instead of

a

fork [6]
- Get weupnp updated in Debian
- Get the javax.sdp/javax.sip APIs into Debian
- Get the freed jain-sip into Debian
- Get ice4j into Debian (with all dependencies already being in Debian)

Any comments, please?

Once that's all done, we can move forward with libjitsi.

Ingo

[1] https://github.com/opentelecoms-org/java-sdp-api
[2] https://github.com/ibauersachs/java-sdp-nist-bridge
[3] https://github.com/jitsi/jain-sip/tree/jitsi2
[4] https://github.com/opentelecoms-org/java-sdp-api/pull/2
[5] https://github.com/jitsi/ice4j/tree/dfsg-jsip
[6] https://github.com/bitletorg/weupnp/pull/15

Ingo