Samba

Development

devel.samba.org contains information about the current state of Samba development. It should be of interest to those developing Samba as well as to those following Samba development.

Very often, questions arise concerning future plans for Samba. For example: "What functionality will be included in the next stable release?" "What are the differences between the various branches?" And also, "How can I learn more, get involved, help, etc?" The information on this page is provided to help answer those kinds of questions.

Important: In order to avoid any potential licensing issues we require that anyone who has signed the Microsoft CIFS Royalty Free Agreement not submit patches to Samba, nor base patches on the referenced specification. We require, too, that patches submitted to Samba not infringe on any known patents. Finally, as with all GPL work, the submitter should ensure that submitted patches do not conflict with any third-party copyright.

General Overview

On 10 January 2008 the Samba team completed the switch from Subversion to Git for all development branches. With the transition to Git we also recovered in the main tree the CVS history. All older code is in the original Subversion and CVS trees; this would include 3.0.x and 2.2.x versions of Samba, which are no longer in active development.

With the release of Samba 3.6.0, the 3.5 series has been turned into maintenance mode, which means severe bug fixes and security fixes only.

There will be security fixes only for the 3.4 series.

The 3.3 series will be discontinued.

Ongoing future research is being done for Samba 4.0 This work is concurrent with Samba 3.6 maintenance and development. alpha releases are available.


Samba Branches

Areas of Samba development are listed below according to their branches within the Git source tree. Plans for each release follow its listing, along with a sample check out command.

GIT

Example checkout command for the main git repo:

git-clone git://git.samba.org/samba.git samba

See Jerry's wiki article on Using Git for Samba Development.

Also see the wiki article on Contribute.

List of branches:

  • master

    This is the new combined branch for 3.x.x and 4.x.x development.

  • v3-4-test

    This is the current branch for 3.4.x maintenance releases (security fixes only).

  • v3-4-stable

    This is the current branch for 3.4.x maintenance releases

    (security fixes only.

  • v3-5-test

    This is the current branch for 3.5.x maintenance releases.

  • v3-5-stable

    This is the current branch for 3.5.x maintenance releases.

  • v3-6-test

    This is the current branch for 3.6.x development.

  • v3-6-stable

    This is the current branch for 3.6.x production releases.

  • v4-0-stable

    This is the current branch for 4.x.x Alpha releases.

  • v4-0-test

    This is the current branch for 4.x.x Alpha releases.


TODO List

Because Samba development is driven by volunteers and demand, the best way to help stabilize the next release and/or feature is to help out. If you are interested in volunteering to help Samba development, go to the TODO page for a list of projects.

Please coordinate all development efforts on the samba-technical mailing list. For more information about the list, or to join the list, go to the samba technical mailing list page. The main samba development channel on IRC is #samba-technical, server irc.freenode.net. Please don't ask user questions in this channel (users see #samba). Channel logs are available here.

Copyright Policy

Also, please see our policy concerning contributor copyright.


Learn More

For anyone interested in getting up to speed with SMB/CIFS, NetBIOS, MS-RPC, etc... Here are some links to help out:

  • Get a copy of Wireshark or possibly Microsoft's Network Monitor shipped with Windows NT/2k server.
  • The MSDN site (msdn.microsoft.com) is pretty good as well, if you know what you are looking for.
  • Coding tools

    As for what editor to use, it's your preference. The tool must not munge formatting to be useful.

    RedHat's Source Navigator generates **huge** cross reference databases but also let's you get around in the code fairly well. You need to run X to use this? See http://sourcenav.sourceforge.net/ for a download link. One could also use 'ctags' to navigate thru the source code.

    Of course, vi and grep will get you there too. :-)

Beyond Samba

Find help to make Samba fly!

You won't be alone with your problem

Releases

Current stable release

Samba 3.6.5 (gzipped)
Release Notes · Signature

Release History

Versions & Notes

Maintenance

Patches · Security Updates · GPG Key