\indexentry {Services!Catalog }{49}
\indexentry {Catalog Services }{49}
\indexentry {General }{49}
\indexentry {Filenames and Maximum Filename Length }{49}
\indexentry {Length!Filenames and Maximum Filename }{49}
\indexentry {MySQL!Installing and Configuring }{50}
\indexentry {Installing and Configuring MySQL }{50}
\indexentry {PostgreSQL!Installing and Configuring }{50}
\indexentry {Installing and Configuring PostgreSQL }{50}
\indexentry {Installing and Configuring SQLite }{50}
\indexentry {SQLite!Installing and Configuring }{50}
\indexentry {Catalog!Internal Bacula }{50}
\indexentry {Internal Bacula Catalog }{50}
\indexentry {Design!Database Table }{50}
\indexentry {Database Table Design }{50}
\indexentry {Sequence of Creation of Records for a Save Job }{50}
\indexentry {Job!Sequence of Creation of Records for a Save }{50}
\indexentry {Database Tables }{51}
\indexentry {Tables!Database }{51}
\indexentry {MySQL Table Definition }{58}
\indexentry {Definition!MySQL Table }{58}
\indexentry {Interface!Implementing a Bacula GUI }{79}
\indexentry {Implementing a Bacula GUI Interface }{79}
\indexentry {General }{79}
\indexentry {Program!Minimal Code in Console }{79}
\indexentry {Minimal Code in Console Program }{79}
\indexentry {GUI Interface is Difficult }{79}
\indexentry {Difficult!GUI Interface is }{79}
\indexentry {GNU ree Documentation License}{115}
\indexentry {License!GNU ree Documentation}{115}
{12}
\indexentry {Message Classes}{12}
\indexentry {Messages!Debug}{12}
\indexentry {Debug Messages}{12}
\indexentry {Messages!Error}{12}
\indexentry {Error Messages}{12}
\indexentry {Job Messages}{13}
\indexentry {Messages!Job}{13}
\indexentry {Queued Job Messages}{13}
\indexentry {Messages!Job}{13}
\indexentry {Messages!Memory}{13}
\indexentry {Memory Messages}{13}
\indexentry {Database!Bugs}{13}
\indexentry {Bugs Database}{13}
\indexentry {Git}{15}
\indexentry {Git!Repo}{15}
\indexentry {Git}{15}
\indexentry {Git Usage}{15}
\indexentry {Learning Git}{16}
\indexentry {Support!Platform}{35}
\indexentry {Platform Support}{35}
\indexentry {General }{35}
\indexentry {Requirements!Platform}{35}
\indexentry {Platform Requirements}{35}
\indexentry {Protocol!Daemon }{37}
\indexentry {Daemon Protocol }{37}
\indexentry {General }{37}
\indexentry {Protocol!Low Level Network }{37}
\indexentry {Low Level Network Protocol }{37}
\indexentry {General Daemon Protocol }{37}
\indexentry {Protocol!General Daemon }{37}
\indexentry {Daemon!Protocol Used Between the Director and the Storage }{38}
\indexentry {Protocol Used Between the Director and the Storage Daemon }{38}
\indexentry {Daemon!Protocol Used Between the Director and the File }{38}
\indexentry {Protocol Used Between the Director and the File Daemon }{38}
\indexentry {Save Protocol Between the File Daemon and the Storage Daemon }{39}
\indexentry {Daemon!Save Protocol Between the File Daemon and the Storage }{39}
\indexentry {Information!Command and Control }{39}
\indexentry {Command and Control Information }{39}
\indexentry {Information!Data }{39}
\indexentry {Data Information }{39}
\indexentry {Daemon!Director Services }{41}
\indexentry {Director Services Daemon }{41}
\indexentry {File Services Daemon }{43}
\indexentry {Daemon!File Services }{43}
\indexentry {Backup!Commands Received from the Director for a }{43}
\indexentry {Commands Received from the Director for a Backup }{43}
\indexentry {Commands Received from the Director for a Restore }{44}
\indexentry {Restore!Commands Received from the Director for a }{44}
\indexentry {Storage Daemon Design }{45}
\indexentry {Design!Storage Daemon }{45}
\indexentry {Introduction!SD Design }{45}
\indexentry {SD Design Introduction }{45}
\indexentry {Outline!SD Development }{45}
\indexentry {SD Development Outline }{45}
\indexentry {Sessions!SD Connections and }{45}
\indexentry {SD Connections and Sessions }{45}
\indexentry {Requests!SD Append }{46}
\indexentry {SD Append Requests }{46}
\indexentry {SPAN class }{46}
\indexentry {SPAN class }{46}
\indexentry {SPAN class }{46}
\indexentry {SPAN class }{46}
\indexentry {SPAN class }{46}
\indexentry {SD Read Requests }{47}
\indexentry {Requests!SD Read }{47}
\indexentry {SPAN class }{47}
\indexentry {SPAN class }{47}
\indexentry {SPAN class }{47}
\indexentry {SD Data Structures}{47}
\indexentry {Format!Storage Media Output}{61}
\indexentry {Storage Media Output Format}{61}
\indexentry {General}{61}
\indexentry {Definitions}{61}
\indexentry {Block}{61}
\indexentry {Record}{61}
\indexentry {JobId}{61}
\indexentry {Session}{61}
\indexentry {VolSessionId}{61}
\indexentry {VolSessionTime}{62}
\indexentry {FileIndex}{62}
\indexentry {Stream}{62}
\indexentry {Block Header}{62}
\indexentry {Record Header}{62}
\indexentry {Data Record}{62}
\indexentry {Volume Label}{62}
\indexentry {Begin Session Label}{62}
\indexentry {End Session Label}{62}
\indexentry {Format!Storage Daemon File Output}{62}
\indexentry {Storage Daemon File Output Format}{62}
\indexentry {Format!Overall}{63}
\indexentry {Overall Format}{63}
\indexentry {Serialization}{63}
\indexentry {Header!Block}{63}
\indexentry {Block Header}{63}
\indexentry {Header!Record}{64}
\indexentry {Record Header}{64}
\indexentry {VolSessionId}{64}
\indexentry {VolSessionTime}{64}
\indexentry {FileIndex}{64}
\indexentry {Stream}{64}
\indexentry {DataSize}{64}
\indexentry {Version BB02 Block Header}{65}
\indexentry {Header!Version BB02 Block}{65}
\indexentry {Version 2 Record Header}{65}
\indexentry {Header!Version 2 Record}{65}
\indexentry {Volume Label Format}{65}
\indexentry {Format!Volume Label}{65}
\indexentry {Label!Session}{66}
\indexentry {Session Label}{66}
\indexentry {Format!Overall Storage}{66}
\indexentry {Overall Storage Format}{66}
\indexentry {Unix File Attributes}{70}
\indexentry {Attributes!Unix File}{70}
\indexentry {FileIndex}{70}
\indexentry {Type}{70}
\indexentry {Filename}{70}
\indexentry {File-Attributes}{70}
\indexentry {Link}{70}
\indexentry {Extended-Attributes}{70}
\indexentry {Old Depreciated Tape Format}{71}
\indexentry {Format!Old Depreciated Tape}{71}
\indexentry {Notes!Bacula Porting}{75}
\indexentry {Bacula Porting Notes}{75}
\indexentry {Requirements!Porting}{75}
\indexentry {Porting Requirements}{75}
\indexentry {Porting!Steps to Take for}{76}
\indexentry {Steps to Take for Porting}{76}
\indexentry {TLS}{81}
\indexentry {TLS Introduction}{81}
\indexentry {Introduction!TLS}{81}
\indexentry {TLS Configuration Directives}{81}
\indexentry {Directives!TLS Configuration}{81}
\indexentry {TLS API Implimentation}{82}
\indexentry {API Implimentation!TLS}{82}
\indexentry {Library Initialization and Cleanup}{82}
\indexentry {Initialization and Cleanup!Library}{82}
\indexentry {TLS Context Manipulation}{82}
\indexentry {Contexts!Manipulating TLS}{82}
\indexentry {TLS Post-Connection Verification}{83}
\indexentry {Verification!TLS Post-Connection}{83}
\indexentry {TLS Connection Manipulation}{83}
\indexentry {Connections!Manipulating TLS}{83}
\indexentry {Bnet API Changes}{84}
\indexentry {API Changes!Bnet}{84}
\indexentry {Negotiating a TLS Connection}{84}
\indexentry {TLS Connection!Negotiating}{84}
\indexentry {Manipulating Socket Blocking State}{84}
\indexentry {Socket Blocking State!Manipulating}{84}
\indexentry {Blocking State!Socket!Manipulating}{84}
\indexentry {Authentication Negotiation}{85}
\indexentry {Negotiation!TLS Authentication}{85}
\indexentry {Testing!Bacula Regression}{87}
\indexentry {Bacula Regression Testing}{87}
\indexentry {General}{87}
\indexentry {Running the Regression Script}{88}
\indexentry {Script!Running the Regression}{88}
\indexentry {Setting the Configuration Parameters}{88}
\indexentry {Parameters!Setting the Configuration}{88}
\indexentry {Building the Test Bacula}{89}
\indexentry {Bacula!Building the Test}{89}
\indexentry {Setting up your SQL engine}{90}
\indexentry {Regression!Running the Disk Only}{90}
\indexentry {Running the Disk Only Regression}{90}
\indexentry {Other Tests}{91}
\indexentry {Tests!Other}{91}
\indexentry {all\_non-root-tests}{91}
\indexentry {all-root-tests}{91}
\indexentry {all-non-root-tape-tests}{91}
\indexentry {all-tape-and-file-tests}{91}
\indexentry {Fails!If a Test}{92}
\indexentry {If a Test Fails}{92}
\indexentry {Test!Testing a Binary Installation}{92}
\indexentry {Running a Single Test}{92}
\indexentry {Test!Writing a Regression}{93}
\indexentry {Writing a Regression Test}{93}
\indexentry {Hand!Running the Tests by}{93}
\indexentry {Running the Tests by Hand}{93}
\indexentry {Structure!Directory}{93}
\indexentry {Directory Structure}{93}
\indexentry {Adding a New Test}{93}
\indexentry {Test!Adding a New}{93}
\indexentry {Debugger}{93}
\indexentry {Utility!Command Line Message Digest }{95}
\indexentry {Command Line Message Digest Utility }{95}
\indexentry {Name}{95}
\indexentry {Synopsis }{95}
\indexentry {Description }{95}
\indexentry {Options }{96}
\indexentry {-csignature }{96}
\indexentry {-dinput\_text }{96}
\indexentry {Files }{96}
\indexentry {Bugs }{96}
\indexentry {Archive!Download md5.zip Zipped }{96}
\indexentry {Download md5.zip (Zipped archive) }{96}
\indexentry {ALSO!SEE }{96}
\indexentry {See Also }{96}
\indexentry {Status!Exit }{97}
\indexentry {Exit Status }{97}
\indexentry {Copying }{97}
\indexentry {Acknowledgements }{97}
\indexentry {Management!Bacula Memory}{99}
\indexentry {Bacula Memory Management}{99}
\indexentry {General}{99}
\indexentry {Statically Allocated Memory}{99}
\indexentry {Memory!Statically Allocated}{99}
\indexentry {Dynamically Allocated Memory}{99}
\indexentry {Memory!Dynamically Allocated}{99}
\indexentry {Memory!Pooled and Non-pooled}{100}
\indexentry {Pooled and Non-pooled Memory}{100}
\indexentry {TCP/IP Network Protocol}{103}
\indexentry {Protocol!TCP/IP Network}{103}
\indexentry {General}{103}
\indexentry {Threads!bnet and}{103}
\indexentry {Bnet and Threads}{103}
\indexentry {Bnet\_open}{103}
\indexentry {Bnet\_send}{104}
\indexentry {Bnet\_fsend}{104}
\indexentry {Information!Additional Error}{104}
\indexentry {Additional Error information}{104}
\indexentry {Bnet\_recv}{104}
\indexentry {Bnet\_sig}{104}
\indexentry {Bnet\_strerror}{105}
\indexentry {Bnet\_close}{105}
\indexentry {Server!Becoming a}{105}
\indexentry {Becoming a Server}{105}
\indexentry {Conventions!Higher Level}{105}
\indexentry {Higher Level Conventions}{105}
\indexentry {Detection!Smart Memory Allocation With Orphaned Buffer }{109}
\indexentry {Smart Memory Allocation With Orphaned Buffer Detection }{109}
\indexentry {SMARTALLOC!Installing }{109}
\indexentry {Installing SMARTALLOC }{109}
\indexentry {SMARTALLOC!Squelching a }{110}
\indexentry {Squelching a SMARTALLOC }{110}
\indexentry {Libraries!Living with }{110}
\indexentry {Living with Libraries }{110}
\indexentry {SMARTALLOC Details }{111}
\indexentry {Details!SMARTALLOC }{111}
\indexentry {When SMARTALLOC is Disabled }{112}
\indexentry {Disabled!When SMARTALLOC is }{112}
\indexentry {Function!alloc }{112}
\indexentry {Alloc() Function }{112}
\indexentry {Underhandedness!Overlays and }{113}
\indexentry {Overlays and Underhandedness }{113}
\indexentry {Test and Demonstration Program }{113}
\indexentry {Program!Test and Demonstration }{113}
\indexentry {Hack!Invitation to the }{113}
\indexentry {Invitation to the Hack }{113}
\indexentry {Archive! Download smartall.zip Zipped }{113}
\indexentry { Download smartall.zip (Zipped archive) }{113}
\indexentry {Copying }{114}
