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