CIFS, Microsoft and the Samba TeamA recent document released by Microsoft has led to some concern within the Samba community regarding patents and licensing. The Samba Team wishes to reassure the Samba community that this document will not have any impact on the use or further development of Samba.
The Microsoft document is a license agreement attached to a technical document which provides information regarding the CIFS protocol. The CIFS protocol (also known as the SMB protocol) is the core protocol that Samba implements to provide seamless filesharing interoperability with Microsoft networking products.
The key concerns that have been raised over this document are:
- Whether the Samba Team needs access to this document for future developments in Samba
- Whether the patents mentioned in the Microsoft license agreement have any impact on current or future usage and development of Samba
- Whether the anti-GPL components of the Microsoft license will change the use of the GNU General Public License for Samba
Use of Microsoft CIFS documentationThe CIFS/SMB protocol has had a long and rocky history, particularly with regard to documentation of the protocol details. The document that Microsoft has recently released adds nothing to the already published knowledge of the CIFS protocol. It is quite strange that Microsoft has gone to such lengths in terms of unusual licensing terms for information which is readily available in existing public documentation.
For people interested in a more accurate and complete description of the CIFS/SMB protocol the Samba Team recommends the recently released SNIA CIFS document, which has been developed through a process of industry collaboration.
CIFS and PatentsIn the text of the license agreement Microsoft mentions two specific patents that relate to the CIFS/SMB protocol. The license grants a royalty free license to these patents, but specifically excludes free software distributed under the GNU General Public License from this royalty free patent license.
Some people have incorrectly assumed that Samba must implement the methods described in these patents. In fact, the methods described in these patents are quite inappropriate for a Unix/POSIX CIFS implementation such as Samba. It would not even be possible to implement the methods described in these patents in a portable POSIX application. Instead, Samba treats the SMBreadbraw and SMBwritebraw protocol elements in the same way as all other elements of the CIFS/SMB protocol. This means that as far as we are aware Samba is completely unaffected by the existence of these patents.
We would like to also point out that these patents cover an obsolete section of the CIFS/SMB protocol that Microsoft themselves have abandoned in their own products long ago. Microsoft abandoned these "raw" protocol operations in CIFS because their basic design is fatally flawed.
Samba and the GNU General Public LicenseThe GNU General Public License has proved to be a very successful model for the development of Samba. While Microsoft labels the GPL as "Intellectual Property Impairing" in their license document, it has in fact proved to be a very successful vehicle for encouraging the development of a high quality CIFS/SMB implementation. Far from "impairing" intellectual property the Samba Team believes that the distribution terms of the GNU GPL has provided an environment which has encouraged a high degree of industry collaboration to the benefit of both Samba users and the many successful companies that have built a wide range of products on top of Samba technology.
The Samba Team fully intends to continue in the use of the GNU GPL to foster innovation and the development of enterprise class file and print serving solutions that seamlessly interoperate with Microsoft networking products.