Difference between revisions of "Developer Documentation"

(First draft of a page which contain links to all developer related wiki pages)
 
(Added link to Samba Security Documentation)
 
(34 intermediate revisions by 9 users not shown)
Line 7: Line 7:
 
* [[CodeReview|Doing code review]]
 
* [[CodeReview|Doing code review]]
  
* [[Using_Git_for_Samba_Development|Using Git for Samba Development]]
+
* [[ActiveProjects|Active projects]]
 +
 
 +
 
 +
= Release planning =
  
* [[ActiveProjects|Active projects]]
+
* [[Samba_Release_Planning|Samba release planning]] (including the [[Samba_Release_Planning#Release_Branch_Checkin_Procedure| Policy and steps required for checkins to branches]])
  
 +
* [[Samba_Features_added/changed_(by_release)|Samba Features added/changed (by release)]]
  
 +
* [[Samba_Next_Goals|Samba Next Goals]]
  
= Release planning =
 
  
* [[Samba_Release_Planning|Samba release planning]]
+
= Source code =
  
* [[Branch_Policy|Policy on checkins to branches]]
+
Samba development is stored in the [https://www.git-scm.com/ Git] SCM system.  See [[Using Git for Samba Development]] for more detail on how Samba uses Git.
  
* [[Samba_Features_added/changed_(by_release)|Samba Features added/changed (by release)]]
+
Two web interfaces are:
 +
* [https://git.samba.org/?p=samba.git;a=heads Samba's own GitWeb] ([https://git.samba.org/?p=samba.git;a=shortlog;h=refs/heads/master latest changes in the master branch])
 +
* [https://github.com/samba-team/samba Official Samba GitHub Mirror]
  
  
  
 
= Debugging / Testing =
 
= Debugging / Testing =
 +
 +
* [[The_Samba_Selftest_System|The Samba Selftest System]]
 +
 +
* [[Samba CI on gitlab]]
  
 
* [[Writing_Torture_Tests|Writing Torture Tests]]
 
* [[Writing_Torture_Tests|Writing Torture Tests]]
 +
 +
* [[Writing_Python_Tests|Writing Python Tests]]
 +
 +
* [[Writing_cmocka_Tests|Writing cmocka Tests]]
 +
 +
* [[Writing_Shell_Tests|Writing Shell Tests]]
 +
 +
* [[Writing_Perl_Tests|Writing Perl Tests]]
  
 
* [[WinTest|Testing against Windows using WinTest]]
 
* [[WinTest|Testing against Windows using WinTest]]
Line 37: Line 55:
 
* [[Wireshark_Keytab|Wireshark with keytab to decrypt encrypted traffic]]
 
* [[Wireshark_Keytab|Wireshark with keytab to decrypt encrypted traffic]]
  
 +
* [[KernelClientTesting|How to test the Linux kernel client against Samba]]
  
 +
* [[Saving_RPC_FAULTs|Saving packets that failed to parse to test IDL fixes using ndrdump]]
 +
 +
* [[Testing removal of ifdef or configure checks|Testing removal of #ifdef or configure checks]]
  
 
= Bug reporting =  
 
= Bug reporting =  
Line 44: Line 66:
  
 
* [[Capture_Packets|Packet capturing]]
 
* [[Capture_Packets|Packet capturing]]
 +
 +
 +
= Security =
 +
 +
* [[Samba_Security_Documentation|Samba Security Documentation]]
 +
 +
 +
= Presentations =
 +
 +
* [[Presentations|Presentations about Samba, including slides and papers]]
 +
 +
 +
 +
= VFS =
 +
 +
* [http://www.samba.org/~sharpe/The-Samba-VFS.pdf Writing a Samba VFS]
 +
* [[The new version of Writing a Samba VFS]] (for Samba 3.6 and earlier)
 +
* [[Writing a Samba VFS Module]] (for Samba 4.0 and above)
  
  
Line 49: Line 89:
 
= Clustered Samba =
 
= Clustered Samba =
  
* [[Clustered_Samba|Clustered Samba]]
+
* [[CTDB_and_Clustered_Samba|CTDB and Clustered Samba]]
 +
 
 +
* [[New_clustering_features_in_SMB3_and_Samba|New clustering features in SMB3 and Samba]]
 +
 
 +
= Building Samba =
 +
 
 +
* [[BuildsystemUseAndWhy|Building Samba 4]] (Which build system to use and why)
 +
 
 +
* [[Waf|Using waf to Build Samba]]
 +
 
  
* [[CTDB_Project|CTDB Project]]
+
 
 +
= Building packages =
 +
 
 +
* [[Samba4/Debian|Building Debian Packages of Samba 4]]
  
  
Line 62: Line 114:
  
 
* [[SoC/Ideas|SoC Samba project ideas]]
 
* [[SoC/Ideas|SoC Samba project ideas]]
 +
 +
 +
 +
= Historical Documentation on the Development of Samba4 =
 +
 +
* [[Samba4/DRS_TODO_List|Samba4 DRS ToDo List]]
 +
 +
* [[Samba4/Status|Samba 4 Status]]
 +
 +
* [[Franky|Franky]]: A Hybrid Samba Active Directory Controller (outdated!)
 +
 +
* [[Samba4/s3fs|An Explanation of the s3fs Architecture for Using smbd in the AD Server]]
 +
 +
* [[Development Resources]]
 +
 +
* [[Samba4/Tests|Test Status]]
 +
 +
* [[SambaGtk|Gtk+ Frontends]]
 +
 +
* [[Samba4/ActiveDirectory|Active Directory Plans]]
 +
 +
* [[Samba4/LDAP_Backend|LDAP Directory Server Backend History Notes]]
 +
 +
* [[Samba4 AD Plugfest 2010 TODO list|Samba 4 AD Plugfest 2010 TODO List]]
 +
 +
* [http://download.samba.org/pub/samba/rc/ Development Releases of Samba4 (technology previews, alphas, betas, release candidates)]
 +
 +
 +
 +
= Academic Writings etc. =
 +
 +
* [https://www.samba.org/samba/news/articles/gensec-white-paper.pdf GENSEC white paper (2005)]
 +
 +
* [https://www.samba.org/samba/news/articles/abartlet_thesis.pdf Thesis on Samba (2005)]
 +
 +
* [https://www.samba.org/~metze/presentations/2007/thesis/StefanMetzmacher_Bachelorthesis_ENG_Draft-9811557.pdf Thesis on Samba replication (2007)]
 +
 +
* [https://www.samba.org/samba/news/articles/samba3-4_integration.pdf Integration of Samba 3 & Samba 4 (2005)]
 +
 +
* [http://is.muni.cz/th/359290/fi_b/thesis.pdf Thesis on Talloc (2012)]

Latest revision as of 17:29, 19 August 2019

How can I contribute


Release planning


Source code

Samba development is stored in the Git SCM system. See Using Git for Samba Development for more detail on how Samba uses Git.

Two web interfaces are:


Debugging / Testing

Bug reporting


Security


Presentations


VFS


Clustered Samba

Building Samba


Building packages


Google Summer of Code


Historical Documentation on the Development of Samba4

  • Franky: A Hybrid Samba Active Directory Controller (outdated!)


Academic Writings etc.