- Bacula Developer Notes
- Bacula Git Usage
- Bacula FD Plugin API
- Normal vs Command vs Options Plugins
- Loading Plugins
- loadPlugin
- Plugin Entry Points
- newPlugin(bpContext *ctx)
- freePlugin(bpContext *ctx)
- getPluginValue(bpContext *ctx, pVariable var, void *value)
- setPluginValue(bpContext *ctx, pVariable var, void *value)
- handlePluginEvent(bpContext *ctx, bEvent *event, void *value)
- startBackupFile(bpContext *ctx, struct save_pkt *sp)
- endBackupFile(bpContext *ctx)
- startRestoreFile(bpContext *ctx, const char *cmd)
- createFile(bpContext *ctx, struct restore_pkt *rp)
- setFileAttributes(bpContext *ctx, struct restore_pkt *rp)
- endRestoreFile(bpContext *ctx)
- pluginIO(bpContext *ctx, struct io_pkt *io)
- bool checkFile(bpContext *ctx, char *fname)
- Bacula Plugin Entrypoints
- bRC registerBaculaEvents(bpContext *ctx, ...)
- bRC getBaculaValue(bpContext *ctx, bVariable var, void *value)
- bRC setBaculaValue(bpContext *ctx, bVariable var, void *value)
- bRC JobMessage(bpContext *ctx, const char *file, int line, int type, utime_t mtime, const char *fmt, ...)
- bRC DebugMessage(bpContext *ctx, const char *file, int line, int level, const char *fmt, ...)
- void baculaMalloc(bpContext *ctx, const char *file, int line, size_t size)
- void baculaFree(bpContext *ctx, const char *file, int line, void *mem)
- Building Bacula Plugins
- Platform Support
- Daemon Protocol
- Director Services Daemon
- File Services Daemon
- Storage Daemon Design
- Catalog Services
- Storage Media Output Format
- Bacula Porting Notes
- Implementing a GUI Interface
- TLS
- Bacula Regression Testing
- Bacula MD5 Algorithm
- Bacula Memory Management
- TCP/IP Network Protocol
- Smart Memory Allocation
- Bacula Copyright, Trademark, and Licenses
- Index
- About this document ...