[Samba] Love is Golden: all ideas have and always will be.

public domain publicdomain0072000 at yahoo.co.uk
Thu Dec 16 23:19:22 GMT 2004

I am delighted to be able to tell you that I have
taken a decision to relinquish Copyright ownership of
all Samba-related code that I have ever written.

I would like to take this as an opportunity to
formally request the Samba Team to reopen the case for
forming an ASF-like "Samba Software Foundation".

As you are no doubt aware, I started work on NT Domain
analysis in 1997, with Paul Ashton.  We succeeded! 
Since then, the transformation, acceptance and
usefulness of that knowledge into Open Source Projects
has met with limited success, and there are many many
reasons for that.

It is my sincere belief that if the research had taken
place under an umbrella organisation such as the ASF
(or similar), that the utilisation of the initial
research would have borne far richer fruit.

There are many definitions of what is a "Successful"
Open Source project.  number of lines of code.  number
of users.   number of developers.  useability. 
conformance to standards.

.. Not many Open Source projects measure "success" by
"the look on manager's faces when they are told they
have another choice other than windows".

In the case of Windows compatibility, the issues are
unbelievably layered, complex, many-hydra-headed and
many-headed-hydrad - and Microsoft would not have it
any other way.  As an example, in order for Mono, the
Open Source .NET clone, to support authenticating to
NT Domains, if they were to start from scratch i
estimate that they would need to reverse-engineer
nearly HALF A MILLION lines of code.

Microsoft has businesses by balls that businesses (and
U.S Depts) didn't and don't even know they'd sold you.

Now, it is very very unfortunate that, at the time I
was working on Samba, i had - and to some extent still
have - very little understanding of social
interaction.  You can research that to your heart's
content: it's not pretty reading, and there is no
benefit to relaying it here.

The _consequences_ however _are_ worthwhile iterating
here.  The consequences are that the acceptance of
various ideas that would have opened up the
Microsoft-dominated arena to users and developers
were... stalled.  Key strategic opportunities to put
in special "outsourcing" interfaces were lost.  That
may require some explanation: Microsoft's approach is
to layer data within other layers - effectively and
literally to build on last year's success with yet
more success - both in technical terms _and_ in
strategic lock-in terms.

By analysing their network protocols and implementing
them, it becomes possible to "interact" at higher and
higher levels, and for yet more Open Source (and
proprietary!) projects to Interoperate.

Where i failed was that at a key interface point -
known as the "NT Named Pipes" interface (see
Microsoft's MSDN "CreateNamedPipe" API) i could not
persuade the samba team to allow other projects to
"Interoperate" at this level.

You see the similarity?  Namely that your options were
to use Microsoft with all its warts and risks but full
functionality and closed-source proprietary lock-in,
or to use a more secure, robust, worthy - but limited
and _equally_ locked in open source clone!

You only have to look at the Wine Team's attempt to
reimplement the Network Neighbourhood due to 1) bugs
in the Windows NetBIOS stack 2) License
incompatibilities between Samba and Wine to recognise
that Samba's design is in some ways _more_ restrictive
than using Windows!  

At least on Windows you _can_ write your own Project -
Open Source or Proprietary - using the Win32
CreateNamedPipe API or the Win32 NetBIOS API, whereas
with Samba you must take the source code and modify it
or you must reinvent it (10 to 20 man-years of work,
if you're lucky).

I am reiterating a point that I have made many times
before, so I will stop here.

In a recent post to the Samba Mailing lists, I offered
the Samba Team an incentive to initiate a Samba
Software Foundation.  It looks like the offer was
rejected.  So, as a gesture of goodwill, in order to
demonstrate that i really AM serious about how
important I believe it is that an SSF exists, I really
really AM relinquishing all copyright of all
Samba-related source code that i have ever written,
and am placing all that code into the Public Domain.

Specifically, but not limited to, that includes the
code in samba which made its way into nmbd (dating
right back to 1.9.15.p6 and before, and also including
the nmbd_multiworkgroup version), all modifications of
smbd that made their way into versions of 1.9.15 and
up, all versions known as samba_ntdom _and_ Samba TNG,
the code that i cut/paste over to FreeDCE to integrate
a NamedPipe Interface plugin and also the FreeDCE
NTLMSSP authentication plugin i worked on.

i think that just about covers it...

[by the way, if anyone knows of any formal / legal
incantations that must be met for that to be
recognised, please contact me, i need to know what
they are].

oh - one other quite important thing: a couple of
people donated or assigned copyright to me on the
condition that the code was made available to the Open
Source community.  i assume that those conditions are
still met by "Public Domain".  i doubt very much if
their contributions - which date back to 1997 / early
1998 - still survive in any recent version of samba.

i mention this for completeness and leave it up to you
to make up your own mind as to what and what not to
use: if nothing else, there still exists a GPL version
oh.  hey, how does that work?  code that used to be
GPL, and now it's public domain?


Win a castle for NYE with your mates and Yahoo! Messenger 

More information about the samba mailing list