# re-licensing pkt-line.c code

5 messages from 2008-09-25 to 2008-09-26. Participants: Scott Chacon, Jakub Narebski, Andreas Ericsson, Shawn O. Pearce, Johannes Schindelin.
Thread: https://gitlist.dev/t/15673

## Scott Chacon, 2008-09-25 17:17

Subject: re-licensing pkt-line.c code
Message-ID: <d411cc4a0809251017h5509bbdmaef935c61cc0929@mail.gmail.com>
URL: https://gitlist.dev/e/d411cc4a0809251017h5509bbdmaef935c61cc0929%40mail.gmail.com

```
Hey all,

I am writing a partial implementation of git in Objective-C so I can
get a git server running on an iphone, and hopefully it could
eventually be used in a mac desktop app that could be distributed
without the git binary. If anyone is interested in the project, you
can get it here:

http://github.com/schacon/objective-git

There are about 20-25 lines of code from pkt-line.c that I think were
originally written back in 2005 that I would like to use so I don't
have to re-implement them.  It is pretty generic - it is just the code
that converts an int into a 4 char hex and back that is placed at the
beginning of several of the network protocol lines.

http://github.com/schacon/objective-git/tree/master/ObjGitServerHandler.m#L554

I have to relicense this, since I can't legally distribute my source
code for the iphone app due to Apples f**king NDA.  I would like to
release my ObjectiveGit project under the MIT (or, alternately, LGPL).
 Is Linus the right person to ask for this permission?  What is the
best way to do so?  I could come up with an alternate way to
accomplish the same thing, but it seems like a waste of time to do so,
and helpful to nobody.

Thanks,
Scott

```

## Jakub Narebski, 2008-09-25 17:49

Subject: Re: Implementations of Git (was: re-licensing pkt-line.c code)
Message-ID: <m3od2c2k29.fsf@localhost.localdomain>
URL: https://gitlist.dev/e/m3od2c2k29.fsf%40localhost.localdomain
In-Reply-To: <d411cc4a0809251017h5509bbdmaef935c61cc0929@mail.gmail.com>

```
"Scott Chacon" <schacon@gmail.com> writes:

> I am writing a partial implementation of git in Objective-C so I can
> get a git server running on an iphone, and hopefully it could
> eventually be used in a mac desktop app that could be distributed
> without the git binary. If anyone is interested in the project, you
> can get it here:
> 
> http://github.com/schacon/objective-git

Could you add it to "Interfaces to other programming languages"
section[1] at http://git.or.cz/gitwiki/InterfacesFrontendsAndTools
if you feel it is quite ready?

[1] Perhaps it should be renamed to "Interfaces to and implementations
    in other programming languages"...


P.S. Do you know what is the status of git#, implementation of Git in
C#, which was one of this year Google Summer of Code projects?

-- 
Jakub Narebski
Poland
ShadeHawk on #git

```

## Andreas Ericsson, 2008-09-25 17:57

Subject: Re: re-licensing pkt-line.c code
Message-ID: <48DBD114.80805@op5.se>
URL: https://gitlist.dev/e/48DBD114.80805%40op5.se
In-Reply-To: <d411cc4a0809251017h5509bbdmaef935c61cc0929@mail.gmail.com>

```
Scott Chacon wrote:
> Hey all,
> 
> I am writing a partial implementation of git in Objective-C so I can
> get a git server running on an iphone, and hopefully it could
> eventually be used in a mac desktop app that could be distributed
> without the git binary. If anyone is interested in the project, you
> can get it here:
> 
> http://github.com/schacon/objective-git
> 
> There are about 20-25 lines of code from pkt-line.c that I think were
> originally written back in 2005 that I would like to use so I don't
> have to re-implement them.  It is pretty generic - it is just the code
> that converts an int into a 4 char hex and back that is placed at the
> beginning of several of the network protocol lines.
> 
> http://github.com/schacon/objective-git/tree/master/ObjGitServerHandler.m#L554
> 
> I have to relicense this, since I can't legally distribute my source
> code for the iphone app due to Apples f**king NDA.  I would like to
> release my ObjectiveGit project under the MIT (or, alternately, LGPL).
>  Is Linus the right person to ask for this permission?  What is the
> best way to do so?


Linus wrote nearly all of pkt-line.c, so yes, he'd be the right person
to ask. If the lines you need were co-authored by someone else, you'll
need to ask that co-author too.

>  I could come up with an alternate way to
> accomplish the same thing, but it seems like a waste of time to do so,
> and helpful to nobody.
> 

Well, tracking down the original author(s) could turn out to be harder.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

```

## Shawn O. Pearce, 2008-09-25 18:01

Subject: Re: re-licensing pkt-line.c code
Message-ID: <20080925180125.GS3669@spearce.org>
URL: https://gitlist.dev/e/20080925180125.GS3669%40spearce.org
In-Reply-To: <48DBD114.80805@op5.se>

```
Andreas Ericsson <ae@op5.se> wrote:
> Scott Chacon wrote:
>>
>> There are about 20-25 lines of code from pkt-line.c that I think were
>> originally written back in 2005 that I would like to use [...]
>>
>> I have to relicense this, since I can't legally distribute my source
>> code for the iphone app due to Apples f**king NDA.  I would like to
>> release my ObjectiveGit project under the MIT (or, alternately, LGPL).
>
>>  I could come up with an alternate way to
>> accomplish the same thing, but it seems like a waste of time to do so,
>> and helpful to nobody.
>
> Well, tracking down the original author(s) could turn out to be harder.

Its already cost more time to ask for permission to reuse these
20-25 lines of code than it would take to figure out how to write
it yourself, and code it.  And Linus still hasn't had a chance to
chime in on this thread.

My guess is you aren't going to get approval from him to relicense
his code.  But he doesn't hold a monopoly on int->hex conversion
algorithms so you should be able to implement something that produces
the same results, given the same inputs, and not have him sue you
in some Utah court.

-- 
Shawn.

```

## Johannes Schindelin, 2008-09-26 11:42

Subject: git-sharp, was Re: Implementations of Git (was: re-licensing pkt-line.c code)
Message-ID: <alpine.DEB.1.00.0809261335240.13830@pacific.mpi-cbg.de.mpi-cbg.de>
URL: https://gitlist.dev/e/alpine.DEB.1.00.0809261335240.13830%40pacific.mpi-cbg.de.mpi-cbg.de
In-Reply-To: <m3od2c2k29.fsf@localhost.localdomain>

```
Hi,

On Thu, 25 Sep 2008, Jakub Narebski wrote:

> P.S. Do you know what is the status of git#, implementation of Git in 
> C#, which was one of this year Google Summer of Code projects?

As I suspected (hoping I would be wrong), the lack of communication (this 
time with the Git community) did not help at all.

The latest commit is this:

http://code.google.com/p/mono-soc-2008/source/detail?r=471

implementing a diff algorithm.

>From what I can tell from the source (I do not have a working C# 
environment), the implementation repeats a lot of what Shawn told us 
earlier were his lessons from his first stab at JGit.  For example, I saw 
that the contents of blobs are read into memory when the blob is read.  I 
haven't checked closely, but I did not have the impression that there were 
accessors making it easy to turn this into a lazy read.

Take-home message: if you think you should develop Open Source in a 
secretive manner, you are almost certainly wrong, and your project will 
almost certainly be slow or even fail (BTW I also see exactly this same 
problem with Govind's try last year, which had a cool name, and then 
another cool name, but not much to show for it).

Ciao,
Dscho

```
