Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > df754e4e6f7f5fc8ab9d6ed8559f3e3d > files > 49

bacula-docs-5.0.3-19.fc16.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<!--Converted with LaTeX2HTML 2008 (1.71)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Developer's Guide</TITLE>
<META NAME="description" CONTENT="Developer's Guide">
<META NAME="keywords" CONTENT="developers">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="developers.css">

<LINK REL="next" HREF="Contents.html">
</HEAD>

<BODY >
<!--Navigation Panel-->
<A NAME="tex2html5"
  HREF="Contents.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up_g.png"> 
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev_g.png"> 
<A NAME="tex2html1"
  HREF="Contents.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
<A NAME="tex2html3"
  HREF="GNU_Free_Documentation_Lice.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
<BR>
<B> Next:</B> <A NAME="tex2html6"
  HREF="Contents.html">Contents</A>
 &nbsp; <B>  <A NAME="tex2html2"
  HREF="Contents.html">Contents</A></B> 
 &nbsp; <B>  <A NAME="tex2html4"
  HREF="GNU_Free_Documentation_Lice.html">Index</A></B> 
<BR>
<BR>
<!--End of Navigation Panel-->

<P>

<P>

<P>

<P>
<H1 ALIGN="CENTER"><IMG
 WIDTH="455" HEIGHT="99" ALIGN="BOTTOM" BORDER="0"
 SRC="img2.png"
 ALT="\includegraphics{bacula-logo.eps}"> 
<BR><P><P>
<BR>
  <FONT SIZE="+4">Bacula<!-- MATH
 $^{\normalsize\textregistered }$
 -->
<IMG
 WIDTH="21" HEIGHT="19" ALIGN="BOTTOM" BORDER="0"
 SRC="img1.png"
 ALT="$^{\normalsize\textregistered }$"> <FONT SIZE="+4">Developer's Guide
  </FONT></FONT>
<DIV ALIGN="CENTER"><FONT SIZE="+4"><FONT SIZE="+4"><FONT SIZE="+1">The Leading Open Source Backup Solution. 
  </FONT></FONT></FONT></DIV><FONT SIZE="+4"></FONT></H1>
<DIV>

<P ALIGN="CENTER"><STRONG>Kern Sibbald</STRONG></P>
<P ALIGN="CENTER"><STRONG>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
<BR>
January 24, 2012
<BR>
This manual documents Bacula version 5.0.3 (04 August 2010)
 
<BR>
<BR>
<BR>
Copyright &#169; 1999-2010, Free Software Foundation Europe
      e.V. 
<BR>
Bacula <IMG
 WIDTH="19" HEIGHT="24" ALIGN="MIDDLE" BORDER="0"
 SRC="img3.png"
 ALT="\textregistered">  is a registered trademark of Kern Sibbald.
<BR>      <BR>
<BR>
Permission is granted to copy, distribute and/or modify this document under the terms of the
  GNU Free Documentation License, Version 1.2 published by the Free Software Foundation; 
  with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
  A copy of the license is included in the section entitled "GNU Free Documentation License".
</STRONG></P>
</DIV>

<P>

<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>

<UL>
<LI><A NAME="tex2html7"
  HREF="Contents.html">Contents</A>
<LI><A NAME="tex2html8"
  HREF="Bacula_Developer_Notes.html">Bacula Developer Notes</A>
<UL>
<LI><A NAME="tex2html9"
  HREF="Bacula_Developer_Notes.html#SECTION00201000000000000000">Contributions</A>
<LI><A NAME="tex2html10"
  HREF="Bacula_Developer_Notes.html#SECTION00202000000000000000">Patches</A>
<LI><A NAME="tex2html11"
  HREF="Bacula_Developer_Notes.html#SECTION00203000000000000000">Copyrights</A>
<LI><A NAME="tex2html12"
  HREF="Bacula_Developer_Notes.html#SECTION00204000000000000000">Copyright Assignment - Fiduciary License Agreement</A>
<LI><A NAME="tex2html13"
  HREF="Development_Cycle.html">The Development Cycle</A>
<LI><A NAME="tex2html14"
  HREF="Bacula_Code_Submissions_Pro.html">Bacula Code Submissions and Projects</A>
<LI><A NAME="tex2html15"
  HREF="Patches_Released_Versions.html">Patches for Released Versions</A>
<LI><A NAME="tex2html16"
  HREF="Developing_Bacula.html">Developing Bacula</A>
<UL>
<LI><A NAME="tex2html17"
  HREF="Developing_Bacula.html#SECTION00241000000000000000">Debugging</A>
<LI><A NAME="tex2html18"
  HREF="Developing_Bacula.html#SECTION00242000000000000000">Using a Debugger</A>
<LI><A NAME="tex2html19"
  HREF="Developing_Bacula.html#SECTION00243000000000000000">Memory Leaks</A>
<LI><A NAME="tex2html20"
  HREF="Developing_Bacula.html#SECTION00244000000000000000">Special Files</A>
<LI><A NAME="tex2html21"
  HREF="Developing_Bacula.html#SECTION00245000000000000000">When Implementing Incomplete Code</A>
<LI><A NAME="tex2html22"
  HREF="Developing_Bacula.html#SECTION00246000000000000000">Bacula Source File Structure</A>
<LI><A NAME="tex2html23"
  HREF="Developing_Bacula.html#SECTION00247000000000000000">Header Files</A>
<LI><A NAME="tex2html24"
  HREF="Developing_Bacula.html#SECTION00248000000000000000">Programming Standards</A>
<LI><A NAME="tex2html25"
  HREF="Developing_Bacula.html#SECTION00249000000000000000">Do Not Use</A>
<LI><A NAME="tex2html26"
  HREF="Developing_Bacula.html#SECTION002410000000000000000">Avoid if Possible</A>
<LI><A NAME="tex2html27"
  HREF="Developing_Bacula.html#SECTION002411000000000000000">Do Use Whenever Possible</A>
<LI><A NAME="tex2html28"
  HREF="Developing_Bacula.html#SECTION002412000000000000000">Indenting Standards</A>
<LI><A NAME="tex2html29"
  HREF="Developing_Bacula.html#SECTION002413000000000000000">Tabbing</A>
<LI><A NAME="tex2html30"
  HREF="Developing_Bacula.html#SECTION002414000000000000000">Don'ts</A>
<LI><A NAME="tex2html31"
  HREF="Developing_Bacula.html#SECTION002415000000000000000">Message Classes</A>
<LI><A NAME="tex2html32"
  HREF="Developing_Bacula.html#SECTION002416000000000000000">Debug Messages</A>
<LI><A NAME="tex2html33"
  HREF="Developing_Bacula.html#SECTION002417000000000000000">Error Messages</A>
<LI><A NAME="tex2html34"
  HREF="Developing_Bacula.html#SECTION002418000000000000000">Job Messages</A>
<LI><A NAME="tex2html35"
  HREF="Developing_Bacula.html#SECTION002419000000000000000">Queued Job Messages</A>
<LI><A NAME="tex2html36"
  HREF="Developing_Bacula.html#SECTION002420000000000000000">Memory Messages</A>
<LI><A NAME="tex2html37"
  HREF="Developing_Bacula.html#SECTION002421000000000000000">Bugs Database</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html38"
  HREF="Bacula_Git_Usage.html">Bacula Git Usage</A>
<UL>
<LI><A NAME="tex2html39"
  HREF="Bacula_Git_repositories.html">Bacula Git repositories</A>
<LI><A NAME="tex2html40"
  HREF="Git_Usage.html">Git Usage</A>
<UL>
<LI><A NAME="tex2html41"
  HREF="Git_Usage.html#SECTION00321000000000000000">Learning Git</A>
</UL>
<LI><A NAME="tex2html42"
  HREF="Step_Step_Modifying_Bacula.html">Step by Step Modifying Bacula Code</A>
<UL>
<LI><A NAME="tex2html43"
  HREF="Step_Step_Modifying_Bacula.html#SECTION00331000000000000000">More Details</A>
</UL>
<LI><A NAME="tex2html44"
  HREF="Forcing_Changes.html">Forcing Changes</A>
</UL>
<BR>
<LI><A NAME="tex2html45"
  HREF="Bacula_FD_Plugin_API.html">Bacula FD Plugin API</A>
<UL>
<LI><A NAME="tex2html46"
  HREF="Normal_vs_Command_Plugins.html">Normal vs Command Plugins</A>
<LI><A NAME="tex2html47"
  HREF="Loading_Plugins.html">Loading Plugins</A>
<LI><A NAME="tex2html48"
  HREF="loadPlugin.html">loadPlugin</A>
<LI><A NAME="tex2html49"
  HREF="Plugin_Entry_Points.html">Plugin Entry Points</A>
<UL>
<LI><A NAME="tex2html50"
  HREF="Plugin_Entry_Points.html#SECTION00441000000000000000">newPlugin(bpContext *ctx)</A>
<LI><A NAME="tex2html51"
  HREF="Plugin_Entry_Points.html#SECTION00442000000000000000">freePlugin(bpContext *ctx)</A>
<LI><A NAME="tex2html52"
  HREF="Plugin_Entry_Points.html#SECTION00443000000000000000">getPluginValue(bpContext *ctx, pVariable var, void *value)</A>
<LI><A NAME="tex2html53"
  HREF="Plugin_Entry_Points.html#SECTION00444000000000000000">setPluginValue(bpContext *ctx, pVariable var, void *value)</A>
<LI><A NAME="tex2html54"
  HREF="Plugin_Entry_Points.html#SECTION00445000000000000000">handlePluginEvent(bpContext *ctx, bEvent *event, void *value)</A>
<LI><A NAME="tex2html55"
  HREF="Plugin_Entry_Points.html#SECTION00446000000000000000">startBackupFile(bpContext *ctx, struct save_pkt *sp)</A>
<LI><A NAME="tex2html56"
  HREF="Plugin_Entry_Points.html#SECTION00447000000000000000">endBackupFile(bpContext *ctx)</A>
<LI><A NAME="tex2html57"
  HREF="Plugin_Entry_Points.html#SECTION00448000000000000000">startRestoreFile(bpContext *ctx, const char *cmd)</A>
<LI><A NAME="tex2html58"
  HREF="Plugin_Entry_Points.html#SECTION00449000000000000000">createFile(bpContext *ctx, struct restore_pkt *rp)</A>
<LI><A NAME="tex2html59"
  HREF="Plugin_Entry_Points.html#SECTION004410000000000000000">setFileAttributes(bpContext *ctx, struct restore_pkt *rp)</A>
<LI><A NAME="tex2html60"
  HREF="Plugin_Entry_Points.html#SECTION004411000000000000000">endRestoreFile(bpContext *ctx)</A>
<LI><A NAME="tex2html61"
  HREF="Plugin_Entry_Points.html#SECTION004412000000000000000">pluginIO(bpContext *ctx, struct io_pkt *io)</A>
<LI><A NAME="tex2html62"
  HREF="Plugin_Entry_Points.html#SECTION004413000000000000000">bool checkFile(bpContext *ctx, char *fname)</A>
</UL>
<LI><A NAME="tex2html63"
  HREF="Bacula_Plugin_Entrypoints.html">Bacula Plugin Entrypoints</A>
<UL>
<LI><A NAME="tex2html64"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00451000000000000000">bRC registerBaculaEvents(bpContext *ctx, ...)</A>
<LI><A NAME="tex2html65"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00452000000000000000">bRC getBaculaValue(bpContext *ctx, bVariable var, void *value)</A>
<LI><A NAME="tex2html66"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00453000000000000000">bRC setBaculaValue(bpContext *ctx, bVariable var, void *value)</A>
<LI><A NAME="tex2html67"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00454000000000000000">bRC JobMessage(bpContext *ctx, const char *file, int line,
       int type, utime_t mtime, const char *fmt, ...)</A>
<LI><A NAME="tex2html68"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00455000000000000000">bRC DebugMessage(bpContext *ctx, const char *file, int line,
       int level, const char *fmt, ...)</A>
<LI><A NAME="tex2html69"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00456000000000000000">void baculaMalloc(bpContext *ctx, const char *file, int line,
       size_t size)</A>
<LI><A NAME="tex2html70"
  HREF="Bacula_Plugin_Entrypoints.html#SECTION00457000000000000000">void baculaFree(bpContext *ctx, const char *file, int line, void *mem)</A>
</UL>
<LI><A NAME="tex2html71"
  HREF="Building_Bacula_Plugins.html">Building Bacula Plugins</A>
</UL>
<BR>
<LI><A NAME="tex2html72"
  HREF="Platform_Support.html">Platform Support</A>
<UL>
<LI><A NAME="tex2html73"
  HREF="General.html">General</A>
<LI><A NAME="tex2html74"
  HREF="Requirements_become_Support.html">Requirements to become a Supported Platform</A>
</UL>
<BR>
<LI><A NAME="tex2html75"
  HREF="Daemon_Protocol.html">Daemon Protocol</A>
<UL>
<LI><A NAME="tex2html76"
  HREF="General.html">General</A>
<LI><A NAME="tex2html77"
  HREF="Low_Level_Network_Protocol.html">Low Level Network Protocol</A>
<LI><A NAME="tex2html78"
  HREF="General_Daemon_Protocol.html">General Daemon Protocol</A>
<LI><A NAME="tex2html79"
  HREF="Protocol_Used_Between_Direc.html">The Protocol Used Between the Director and the Storage Daemon</A>
<LI><A NAME="tex2html80"
  HREF="Protocol_Used_Between_Direc.html#SECTION00650000000000000000">The Protocol Used Between the Director and the File Daemon</A>
<LI><A NAME="tex2html81"
  HREF="Save_Protocol_Between_File.html">The Save Protocol Between the File Daemon and the Storage Daemon</A>
<UL>
<LI><A NAME="tex2html82"
  HREF="Save_Protocol_Between_File.html#SECTION00661000000000000000">Command and Control Information</A>
<LI><A NAME="tex2html83"
  HREF="Save_Protocol_Between_File.html#SECTION00662000000000000000">Data Information</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html84"
  HREF="Director_Services_Daemon.html">Director Services Daemon</A>
<LI><A NAME="tex2html85"
  HREF="File_Services_Daemon.html">File Services Daemon</A>
<UL>
<LI><A NAME="tex2html86"
  HREF="Commands_Received_from_Dire.html">Commands Received from the Director for a Backup</A>
<LI><A NAME="tex2html87"
  HREF="Commands_Received_from_Dire.html#SECTION00820000000000000000">Commands Received from the Director for a Restore</A>
</UL>
<BR>
<LI><A NAME="tex2html88"
  HREF="Storage_Daemon_Design.html">Storage Daemon Design</A>
<UL>
<LI><A NAME="tex2html89"
  HREF="SD_Design_Introduction.html">SD Design Introduction</A>
<LI><A NAME="tex2html90"
  HREF="SD_Development_Outline.html">SD Development Outline</A>
<LI><A NAME="tex2html91"
  HREF="SD_Connections_Sessions.html">SD Connections and Sessions</A>
<UL>
<LI><A NAME="tex2html92"
  HREF="SD_Connections_Sessions.html#SECTION00931000000000000000">SD Append Requests</A>
<LI><A NAME="tex2html93"
  HREF="SD_Connections_Sessions.html#SECTION00932000000000000000">SD Read Requests</A>
</UL>
<LI><A NAME="tex2html94"
  HREF="SD_Data_Structures.html">SD Data Structures</A>
</UL>
<BR>
<LI><A NAME="tex2html95"
  HREF="Catalog_Services.html">Catalog Services</A>
<UL>
<LI><A NAME="tex2html96"
  HREF="General.html">General</A>
<UL>
<LI><A NAME="tex2html97"
  HREF="General.html#SECTION001011000000000000000">Filenames and Maximum Filename Length</A>
<LI><A NAME="tex2html98"
  HREF="General.html#SECTION001012000000000000000">Installing and Configuring MySQL</A>
<LI><A NAME="tex2html99"
  HREF="General.html#SECTION001013000000000000000">Installing and Configuring PostgreSQL</A>
<LI><A NAME="tex2html100"
  HREF="General.html#SECTION001014000000000000000">Installing and Configuring SQLite</A>
<LI><A NAME="tex2html101"
  HREF="General.html#SECTION001015000000000000000">Internal Bacula Catalog</A>
<LI><A NAME="tex2html102"
  HREF="General.html#SECTION001016000000000000000">Database Table Design</A>
</UL>
<LI><A NAME="tex2html103"
  HREF="Sequence_Creation_Records_S.html">Sequence of Creation of Records for a Save Job</A>
<LI><A NAME="tex2html104"
  HREF="Database_Tables.html">Database Tables</A>
<UL>
<LI><A NAME="tex2html105"
  HREF="Database_Tables.html#SECTION001031000000000000000">MySQL Table Definition</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html106"
  HREF="Storage_Media_Output_Format.html">Storage Media Output Format</A>
<UL>
<LI><A NAME="tex2html107"
  HREF="General.html">General</A>
<LI><A NAME="tex2html108"
  HREF="Definitions.html">Definitions</A>
<LI><A NAME="tex2html109"
  HREF="Storage_Daemon_File_Output.html">Storage Daemon File Output Format</A>
<LI><A NAME="tex2html110"
  HREF="Overall_Format.html">Overall Format</A>
<LI><A NAME="tex2html111"
  HREF="Serialization.html">Serialization</A>
<LI><A NAME="tex2html112"
  HREF="Block_Header.html">Block Header</A>
<LI><A NAME="tex2html113"
  HREF="Record_Header.html">Record Header</A>
<LI><A NAME="tex2html114"
  HREF="Version_BB02_Block_Header.html">Version BB02 Block Header</A>
<LI><A NAME="tex2html115"
  HREF="Version_2_Record_Header.html">Version 2 Record Header</A>
<LI><A NAME="tex2html116"
  HREF="Volume_Label_Format.html">Volume Label Format</A>
<LI><A NAME="tex2html117"
  HREF="Session_Label.html">Session Label</A>
<LI><A NAME="tex2html118"
  HREF="Overall_Storage_Format.html">Overall Storage Format</A>
<LI><A NAME="tex2html119"
  HREF="Unix_File_Attributes.html">Unix File Attributes</A>
<LI><A NAME="tex2html120"
  HREF="Old_Depreciated_Tape_Format.html">Old Depreciated Tape Format</A>
</UL>
<BR>
<LI><A NAME="tex2html121"
  HREF="Bacula_Porting_Notes.html">Bacula Porting Notes</A>
<UL>
<LI><A NAME="tex2html122"
  HREF="Porting_Requirements.html">Porting Requirements</A>
<LI><A NAME="tex2html123"
  HREF="Steps_Take_Porting.html">Steps to Take for Porting</A>
</UL>
<BR>
<LI><A NAME="tex2html124"
  HREF="Implementing_GUI_Interface.html">Implementing a GUI Interface</A>
<UL>
<LI><A NAME="tex2html125"
  HREF="General.html">General</A>
<UL>
<LI><A NAME="tex2html126"
  HREF="General.html#SECTION001311000000000000000">Minimal Code in Console Program</A>
<LI><A NAME="tex2html127"
  HREF="General.html#SECTION001312000000000000000">GUI Interface is Difficult</A>
</UL>
<LI><A NAME="tex2html128"
  HREF="Bvfs_API.html">Bvfs API</A>
</UL>
<BR>
<LI><A NAME="tex2html129"
  HREF="TLS.html">TLS</A>
<UL>
<LI><A NAME="tex2html130"
  HREF="Introduction_TLS.html">Introduction to TLS</A>
<LI><A NAME="tex2html131"
  HREF="New_Configuration_Directive.html">New Configuration Directives</A>
<LI><A NAME="tex2html132"
  HREF="TLS_API_Implementation.html">TLS API Implementation</A>
<UL>
<LI><A NAME="tex2html133"
  HREF="TLS_API_Implementation.html#SECTION001431000000000000000">Library Initialization and Cleanup</A>
<LI><A NAME="tex2html134"
  HREF="TLS_API_Implementation.html#SECTION001432000000000000000">Manipulating TLS Contexts</A>
<LI><A NAME="tex2html135"
  HREF="TLS_API_Implementation.html#SECTION001433000000000000000">Performing Post-Connection Verification</A>
<LI><A NAME="tex2html136"
  HREF="TLS_API_Implementation.html#SECTION001434000000000000000">Manipulating TLS Connections</A>
</UL>
<LI><A NAME="tex2html137"
  HREF="Bnet_API_Changes.html">Bnet API Changes</A>
<UL>
<LI><A NAME="tex2html138"
  HREF="Bnet_API_Changes.html#SECTION001441000000000000000">Negotiating a TLS Connection</A>
<LI><A NAME="tex2html139"
  HREF="Bnet_API_Changes.html#SECTION001442000000000000000">Manipulating Socket Blocking State</A>
</UL>
<LI><A NAME="tex2html140"
  HREF="Authentication_Negotiation.html">Authentication Negotiation</A>
</UL>
<BR>
<LI><A NAME="tex2html141"
  HREF="Bacula_Regression_Testing.html">Bacula Regression Testing</A>
<UL>
<LI><A NAME="tex2html142"
  HREF="Setting_up_Regession_Testin.html">Setting up Regession Testing</A>
<LI><A NAME="tex2html143"
  HREF="Running_Regression_Script.html">Running the Regression Script</A>
<UL>
<LI><A NAME="tex2html144"
  HREF="Running_Regression_Script.html#SECTION001521000000000000000">Setting the Configuration Parameters</A>
<LI><A NAME="tex2html145"
  HREF="Running_Regression_Script.html#SECTION001522000000000000000">Building the Test Bacula</A>
<LI><A NAME="tex2html146"
  HREF="Running_Regression_Script.html#SECTION001523000000000000000">Setting up your SQL engine</A>
<LI><A NAME="tex2html147"
  HREF="Running_Regression_Script.html#SECTION001524000000000000000">Running the Disk Only Regression</A>
<LI><A NAME="tex2html148"
  HREF="Running_Regression_Script.html#SECTION001525000000000000000">Other Tests</A>
<LI><A NAME="tex2html149"
  HREF="Running_Regression_Script.html#SECTION001526000000000000000">If a Test Fails</A>
</UL>
<LI><A NAME="tex2html150"
  HREF="Testing_Binary_Installation.html">Testing a Binary Installation</A>
<LI><A NAME="tex2html151"
  HREF="Running_Single_Test.html">Running a Single Test</A>
<LI><A NAME="tex2html152"
  HREF="Writing_Regression_Test.html">Writing a Regression Test</A>
<UL>
<LI><A NAME="tex2html153"
  HREF="Writing_Regression_Test.html#SECTION001551000000000000000">Running the Tests by Hand</A>
<LI><A NAME="tex2html154"
  HREF="Writing_Regression_Test.html#SECTION001552000000000000000">Directory Structure</A>
<LI><A NAME="tex2html155"
  HREF="Writing_Regression_Test.html#SECTION001553000000000000000">Adding a New Test</A>
<LI><A NAME="tex2html156"
  HREF="Writing_Regression_Test.html#SECTION001554000000000000000">Running a Test Under The Debugger</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html157"
  HREF="Bacula_MD5_Algorithm.html">Bacula MD5 Algorithm</A>
<UL>
<LI><A NAME="tex2html158"
  HREF="Command_Line_Message_Digest.html">Command Line Message Digest Utility </A>
<UL>
<LI><A NAME="tex2html159"
  HREF="Command_Line_Message_Digest.html#SECTION001611000000000000000">Name</A>
<LI><A NAME="tex2html160"
  HREF="Command_Line_Message_Digest.html#SECTION001612000000000000000">Synopsis</A>
<LI><A NAME="tex2html161"
  HREF="Command_Line_Message_Digest.html#SECTION001613000000000000000">Description</A>
<LI><A NAME="tex2html162"
  HREF="Command_Line_Message_Digest.html#SECTION001614000000000000000">Options</A>
<LI><A NAME="tex2html163"
  HREF="Command_Line_Message_Digest.html#SECTION001615000000000000000">Files</A>
<LI><A NAME="tex2html164"
  HREF="Command_Line_Message_Digest.html#SECTION001616000000000000000">Bugs</A>
</UL>
<LI><A NAME="tex2html165"
  HREF="Download_md5_ziphttp_www_fo.html">Download md5.ziphttp://www.fourmilab.ch/md5/md5.zip (Zipped
archive)</A>
<UL>
<LI><A NAME="tex2html166"
  HREF="Download_md5_ziphttp_www_fo.html#SECTION001621000000000000000">See Also</A>
<LI><A NAME="tex2html167"
  HREF="Download_md5_ziphttp_www_fo.html#SECTION001622000000000000000">Exit Status</A>
<LI><A NAME="tex2html168"
  HREF="Download_md5_ziphttp_www_fo.html#SECTION001623000000000000000">Copying</A>
<LI><A NAME="tex2html169"
  HREF="Download_md5_ziphttp_www_fo.html#SECTION001624000000000000000">Acknowledgements</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html170"
  HREF="Bacula_Memory_Management.html">Bacula Memory Management</A>
<UL>
<LI><A NAME="tex2html171"
  HREF="General.html">General</A>
<UL>
<LI><A NAME="tex2html172"
  HREF="General.html#SECTION001711000000000000000">Statically Allocated Memory</A>
<LI><A NAME="tex2html173"
  HREF="General.html#SECTION001712000000000000000">Dynamically Allocated Memory</A>
<LI><A NAME="tex2html174"
  HREF="General.html#SECTION001713000000000000000">Pooled and Non-pooled Memory</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html175"
  HREF="TCP_IP_Network_Protocol.html">TCP/IP Network Protocol</A>
<UL>
<LI><A NAME="tex2html176"
  HREF="General.html">General</A>
<LI><A NAME="tex2html177"
  HREF="bnet_Threads.html">bnet and Threads</A>
<LI><A NAME="tex2html178"
  HREF="bnet_open.html">bnet_open</A>
<LI><A NAME="tex2html179"
  HREF="bnet_send.html">bnet_send</A>
<LI><A NAME="tex2html180"
  HREF="bnet_fsend.html">bnet_fsend</A>
<LI><A NAME="tex2html181"
  HREF="Additional_Error_informatio.html">Additional Error information</A>
<LI><A NAME="tex2html182"
  HREF="bnet_recv.html">bnet_recv</A>
<LI><A NAME="tex2html183"
  HREF="bnet_sig.html">bnet_sig</A>
<LI><A NAME="tex2html184"
  HREF="bnet_strerror.html">bnet_strerror</A>
<LI><A NAME="tex2html185"
  HREF="bnet_close.html">bnet_close</A>
<LI><A NAME="tex2html186"
  HREF="Becoming_Server.html">Becoming a Server</A>
<LI><A NAME="tex2html187"
  HREF="Higher_Level_Conventions.html">Higher Level Conventions</A>
</UL>
<BR>
<LI><A NAME="tex2html188"
  HREF="Smart_Memory_Allocation.html">Smart Memory Allocation</A>
<UL>
<LI><A NAME="tex2html189"
  HREF="Smart_Memory_Allocation.html#SECTION001901000000000000000">Installing SMARTALLOC</A>
<LI><A NAME="tex2html190"
  HREF="Smart_Memory_Allocation.html#SECTION001902000000000000000">Squelching a SMARTALLOC</A>
<LI><A NAME="tex2html191"
  HREF="Smart_Memory_Allocation.html#SECTION001903000000000000000">Living with Libraries</A>
<LI><A NAME="tex2html192"
  HREF="Smart_Memory_Allocation.html#SECTION001904000000000000000">SMARTALLOC Details</A>
<LI><A NAME="tex2html193"
  HREF="Smart_Memory_Allocation.html#SECTION001905000000000000000">When SMARTALLOC is Disabled</A>
<LI><A NAME="tex2html194"
  HREF="Smart_Memory_Allocation.html#SECTION001906000000000000000">The <TT>alloc()</TT> Function</A>
<LI><A NAME="tex2html195"
  HREF="Smart_Memory_Allocation.html#SECTION001907000000000000000">Overlays and Underhandedness</A>
<LI><A NAME="tex2html196"
  HREF="Smart_Memory_Allocation.html#SECTION001908000000000000000">Test and Demonstration Program</A>
<LI><A NAME="tex2html197"
  HREF="Smart_Memory_Allocation.html#SECTION001909000000000000000">Invitation to the Hack</A>
<LI><A NAME="tex2html198"
  HREF="http_www_fourmilab_ch_smart.html">http://www.fourmilab.ch/smartall/smartall.zip 
Download smartall.ziphttp://www.fourmilab.ch/smartall/smartall.zip
(Zipped archive)</A>
<UL>
<LI><A NAME="tex2html199"
  HREF="http_www_fourmilab_ch_smart.html#SECTION001911000000000000000">Copying</A>
</UL>
</UL>
<BR>
<LI><A NAME="tex2html200"
  HREF="GNU_Free_Documentation_Lice.html">GNU Free Documentation License</A>
<LI><A NAME="tex2html201"
  HREF="Director_Index.html">File Daemon Index</A>
<LI><A NAME="tex2html202"
  HREF="About_this_document.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>

2012-01-24
</ADDRESS>
</BODY>
</HTML>