2 Bacula® - The Network Backup Solution
4 Copyright (C) 2000-2008 Free Software Foundation Europe e.V.
6 The main author of Bacula is Kern Sibbald, with contributions from
7 many others, a complete list can be found in the file AUTHORS.
8 This program is Free Software; you can redistribute it and/or
9 modify it under the terms of version two of the GNU General Public
10 License as published by the Free Software Foundation and included
13 This program is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
23 Bacula® is a registered trademark of Kern Sibbald.
24 The licensor of Bacula is the Free Software Foundation Europe
25 (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
26 Switzerland, email:ftf@fsfeurope.org.
29 * Prototypes for finlib directory of Bacula
35 void encode_stat (char *buf, struct stat *statp, int32_t LinkFI, int data_stream);
36 int decode_stat (char *buf, struct stat *statp, int32_t *LinkFI);
37 int32_t decode_LinkFI (char *buf, struct stat *statp);
38 int encode_attribsEx (JCR *jcr, char *attribsEx, FF_PKT *ff_pkt);
39 bool set_attributes (JCR *jcr, ATTR *attr, BFILE *ofd);
40 int select_data_stream(FF_PKT *ff_pkt);
42 /* from create_file.c */
43 int create_file (JCR *jcr, ATTR *attr, BFILE *ofd, int replace);
46 FF_PKT *init_find_files();
47 void set_find_options(FF_PKT *ff, int incremental, time_t mtime);
48 void set_find_changed_function(FF_PKT *ff, bool check_fct(JCR *jcr, FF_PKT *ff));
49 int find_files(JCR *jcr, FF_PKT *ff, int file_sub(JCR *, FF_PKT *ff_pkt, bool),
50 int plugin_sub(JCR *, FF_PKT *ff_pkt, bool));
51 int match_files(JCR *jcr, FF_PKT *ff, int sub(JCR *, FF_PKT *ff_pkt, bool));
52 int term_find_files(FF_PKT *ff);
53 int get_win32_driveletters(FF_PKT *ff, char* szDrives);
54 bool is_in_fileset(FF_PKT *ff);
57 void init_include_exclude_files(FF_PKT *ff);
58 void term_include_exclude_files(FF_PKT *ff);
59 void add_fname_to_include_list(FF_PKT *ff, int prefixed, const char *fname);
60 void add_fname_to_exclude_list(FF_PKT *ff, const char *fname);
61 int file_is_excluded(FF_PKT *ff, const char *file);
62 int file_is_included(FF_PKT *ff, const char *file);
63 struct s_included_file *get_next_included_file(FF_PKT *ff,
64 struct s_included_file *inc);
67 int find_one_file(JCR *jcr, FF_PKT *ff,
68 int handle_file(JCR *jcr, FF_PKT *ff_pkt, bool top_level),
69 char *p, dev_t parent_device, bool top_level);
70 int term_find_one(FF_PKT *ff);
71 bool has_file_changed(JCR *jcr, FF_PKT *ff_pkt);
74 int enable_backup_privileges(JCR *jcr, int ignore_errors);
78 bool makepath(ATTR *attr, const char *path, mode_t mode,
79 mode_t parent_mode, uid_t owner, gid_t group,
83 bool fstype(const char *fname, char *fs, int fslen);
85 /* from drivetype.c */
86 bool drivetype(const char *fname, char *fs, int fslen);
88 /* from bfile.c -- see bfile.h */