Mailing List Archive

Re: [Quagga-users 24] Re: so...
On Mon, 4 Aug 2003, James R. Leu wrote:

> I would like to see a much more formal 'porting-layer'. If you
> would like to see an example of what I mean, take a look at my
> 'ldp-portable' package. The guts of the package are a library
> which implement RFC 3036 (Label Distribution Protocol for MPLS).
> It uses a 'porting-layer' or well defined API, to interact with the
> underlying system. In this case I have implemented a layer to
> interact with zebra. In the pass I've implemented layers that
> interact with the linux kernel, and the freebsd kernel.
>
> ldp-portable is part of http://mpls-linux.sf.net/

Do you have a tarball available for download, to save us having to
install and play with perforce?

> If people are serious about architecting quagga to be more OS
> independent I would be happy to start a discussion about it and
> keep track of the results of that discussion.

Sure. Want to describe your ideas a bit?

Also, I'm going to move this discussion to quagga-dev - Cc updated.

regards,
--
Paul Jakma paul@clubi.ie paul@jakma.org Key ID: 64A2FF6A
warning: do not ever send email to spam@dishone.st
Fortune:
"I'll rob that rich person and give it to some poor deserving slob.
That will *prove* I'm Robin Hood."
-- Daffy Duck, "Robin Hood Daffy", [1958, Chuck Jones]
Re: [Quagga-users 24] Re: so... [ In reply to ]
On Mon, Aug 04, 2003 at 08:59:28AM +0100, Paul Jakma wrote:
> On Mon, 4 Aug 2003, James R. Leu wrote:
>
> > I would like to see a much more formal 'porting-layer'. If you
> > would like to see an example of what I mean, take a look at my
> > 'ldp-portable' package. The guts of the package are a library
> > which implement RFC 3036 (Label Distribution Protocol for MPLS).
> > It uses a 'porting-layer' or well defined API, to interact with the
> > underlying system. In this case I have implemented a layer to
> > interact with zebra. In the pass I've implemented layers that
> > interact with the linux kernel, and the freebsd kernel.
> >
> > ldp-portable is part of http://mpls-linux.sf.net/
>
> Do you have a tarball available for download, to save us having to
> install and play with perforce?

Check out http://sf.net/projects/mpls-linux/

> > If people are serious about architecting quagga to be more OS
> > independent I would be happy to start a discussion about it and
> > keep track of the results of that discussion.
>
> Sure. Want to describe your ideas a bit?

My ideas are nothing radical in fact my ldp-portable implementation
of a porting layer isn't even all that good, but ....

In ldp-portable I defined some functions that must be implemented by
the porting layer. (check out the *_impl.h files in ldp-portable).
Examples of these are memory allocation, socket interaction, route and
interface interaction etc. Each platform would have it's own porting
layer and would only be compiled/linked on that platform. This avoids
#ifdef'ing code and forces there to be a seperation between the quagga
and the platform specific code.

I know this exists in quagga to some extent already, but it's not
formalized and it could be extended.

PS Is there any chance that quagga would be changed to the LGPL?
If I understand the LGPL correctly a vendor could implement there
own propriatary porting layer link it with the 'quagga library'. All
changes to the 'quagga library' would still need to be made public,
but they would not be forced to release their propriatary porting layer.

--
James R. Leu

>
> Also, I'm going to move this discussion to quagga-dev - Cc updated.
>
> regards,
> --
> Paul Jakma paul@clubi.ie paul@jakma.org Key ID: 64A2FF6A
> warning: do not ever send email to spam@dishone.st
> Fortune:
> "I'll rob that rich person and give it to some poor deserving slob.
> That will *prove* I'm Robin Hood."
> -- Daffy Duck, "Robin Hood Daffy", [1958, Chuck Jones]
Re: [Quagga-users 24] Re: so... [ In reply to ]
--On Wednesday, August 6, 2003 12:16 am -0500 "James R. Leu"
<jleu@mindspring.com> wrote:

> PS Is there any chance that quagga would be changed to the LGPL?

I doubt it. Most of the code is copyright Kunihiro, so would need his
permission to change - and even then there are some large chunks of code
submitted by others - and you'd need their permission too.

Cue Ted on the GPL :)

Rick