Developer documentation: Difference between revisions

From wiki.zmanda.com
Jump to navigation Jump to search
No edit summary
No edit summary
 
(68 intermediate revisions by 4 users not shown)
Line 1: Line 1:
* [[Software architecture]]
__NOEDITSECTION__ __NOTOC__
* [[Secure API]]
<table style="width: 100%;" cellspacing="5">
* [[Virtual tape API]]
<tr><td width="45%" valign="top">
* Server/Client communication
<div style="left: 0px; right: 0px;  border: 1px solid gray; padding-left:1em; padding-right: 0.5em; font-size: 95%; margin-bottom: 5px;">
** [[TCP/UDP ports]]
==Introduction==
** [[Firewalls & NAT]]
* [[How To Help]] - How can you get involved?
** [[How to use auth SSH]]
** [[Tasks|Development Tasks]] - Stuff that needs doing.
* [[Application API]]
** [[Fork Amanda on Github]] - Easiest way to start hacking
* [[Event API]]
* [[Development Dependencies]] - The tools you'll need to develop.
* [[Testing]] - How to test Amanda
* [[Software architecture]] - How Amanda fits together
* [[Coding Guidelines]] - Things every developer should know
* [[Perl Interface]] - Amanda's being rewritten in Perl!
* [[Licensing your Contribution]]
</div>
<div style="left: 0px; right: 0px;  border: thin solid gray; padding-left:1em; padding-right: 0.5em; font-size: 95%; margin-bottom: 5px;">
== Developer Resources ==
=== Community ===
* [http://www.amanda.org/support/mailinglists.php amanda-hackers mailing list]
* [http://sourceforge.net/projects/amanda sourceforge project page]
* [[Platform Experts]]
* [http://code.v.igoro.us/categories/6-amanda Developer's Blog]
=== Tools ===
* [[Lint]]
* [[Valgrind]]
* [http://wiki.zmanda.com/glib-docs/ Glib-2.2.0 documentation]
=== Presentations ===
* [[Presentations/Perl in the Amanda Core|Perl in the Amanda Core]] (2008-01-18, Dustin J. Mitchell)
* [[Presentations/Amanda Development (UM-LUG)|Amanda Development (UM-LUG)]] (2008-03-26, Dustin J. Mitchell)
</div>
<div style="left: 0px; right: 0px; border: thin solid gray; padding-left:1em; padding-right: 0.5em; font-size: 90%; margin-bottom: 5px;">
== Static source code analysis ==
 
Coverity and Klocwork have been running their static analysis tools on the latest Amanda source code and making the results available for the Amanda developers to analyse and fix the defects.  The Amanda hackers are thankful to these companies for making these tools available and in general, helping to improve quality of open source projects.
 
* In collaboration with Stanford University, [http://scan.coverity.com Coverity] is establishing a new baseline for software quality and security in open source. Under a contract with the Department of Homeland Security, Coverity applies the latest innovations in automated defect detection to uncover some of the most critical types of bugs found in software.
* Amanda has been analyzed with [http://www.klocwork.com Klocwork source code analysis], the most accurate and comprehensive tool for finding critical programming errors and security vulnerabilities.
</div>
</td><td width="55%" valign="top"> <!-- SECOND COLUMN -->
<div style="left: 0px; right: 0px;  border: 1px solid gray; padding-left:1em; padding-right: 0.5em; font-size: 95%; margin-bottom: 5px;">
== Documentation ==
* Perl Module Documentation for [http://wiki.zmanda.com/pod/ HEAD] ([http://wiki.zmanda.com/pod/2.6.0 2.6.0], [http://wiki.zmanda.com/pod/2.6.1 2.6.1], [http://wiki.zmanda.com/pod/3.1 3.1])
=== Overviews ===
* [[Taper Process Overview]] (bug Dustin to finish this!)
* [[Recovery Process Overview]]
=== APIs ===
* [[Changer API]]
* [[Transfer Architecture]] (XFA)
* [[Device API]]
* [[Application API]] (under development)
* [[Script API]]
* [[Configuration API]]
* [[Security API]]
=== Protocols, Formats, etc. ===
* [[Driver-Taper protocol]]
* [[Driver-Taper protocol]]
* [[Reading amanda configuration]]
* [[Driver-Chunker protocol]]
* [[Amanda Protocol]] - protocol for invoking services via amandad
* [[Amandad Service Protocol]] - how amandad communicates with services
* [[amindexd protocol]]
* [[amidxtaped protocol]]
* [[amdumpd protocol]]
* [[DirectTCP]]
* [[Log Files]]
** [[Amanda log files/Trace Logs|Trace Logs]]
** [[Amanda log files/Debug Logs|Debug Logs]]
** [[Amanda log files/Amdump Logs|Amdump Logs]]
* [[Tapespec]]
=== Notes ===
These are notes from development conversations in the past; they can help figure out why things are the way they are, but they are not designed as documentation.
* [[REQ packet format update]]
* [[Planner Notes]]
* [[Tape Driver Semantics]]
* [[GNU Tar Include and Exclude Behavior]]
* [[Splitting Configuration Parameters and Behavior]]
</div>
</td></tr>
</table>

Latest revision as of 13:47, 22 January 2011

Introduction

Developer Resources

Community

Tools

Presentations

Static source code analysis

Coverity and Klocwork have been running their static analysis tools on the latest Amanda source code and making the results available for the Amanda developers to analyse and fix the defects. The Amanda hackers are thankful to these companies for making these tools available and in general, helping to improve quality of open source projects.

  • In collaboration with Stanford University, Coverity is establishing a new baseline for software quality and security in open source. Under a contract with the Department of Homeland Security, Coverity applies the latest innovations in automated defect detection to uncover some of the most critical types of bugs found in software.
  • Amanda has been analyzed with Klocwork source code analysis, the most accurate and comprehensive tool for finding critical programming errors and security vulnerabilities.

Documentation

Overviews

APIs

Protocols, Formats, etc.

Notes

These are notes from development conversations in the past; they can help figure out why things are the way they are, but they are not designed as documentation.