2 * Prototypes for finlib directory of Bacula
7 Bacula® - The Network Backup Solution
9 Copyright (C) 2000-2006 Free Software Foundation Europe e.V.
11 The main author of Bacula is Kern Sibbald, with contributions from
12 many others, a complete list can be found in the file AUTHORS.
13 This program is Free Software; you can redistribute it and/or
14 modify it under the terms of version two of the GNU General Public
15 License as published by the Free Software Foundation plus additions
16 that are listed in the file LICENSE.
18 This program is distributed in the hope that it will be useful, but
19 WITHOUT ANY WARRANTY; without even the implied warranty of
20 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21 General Public License for more details.
23 You should have received a copy of the GNU General Public License
24 along with this program; if not, write to the Free Software
25 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
28 Bacula® is a registered trademark of John Walker.
29 The licensor of Bacula is the Free Software Foundation Europe
30 (FSFE), Fiduciary Program, Sumatrastrasse 25, 8006 Zürich,
31 Switzerland, email:ftf@fsfeurope.org.
35 void encode_stat (char *buf, FF_PKT *ff_pkt, 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 int find_files(JCR *jcr, FF_PKT *ff, int sub(FF_PKT *ff_pkt, void *hpkt, bool), void *pkt);
49 int match_files(JCR *jcr, FF_PKT *ff, int sub(FF_PKT *ff_pkt, void *hpkt, bool), void *pkt);
50 int term_find_files(FF_PKT *ff);
51 int get_win32_driveletters(FF_PKT *ff, char* szDrives);
54 void init_include_exclude_files(FF_PKT *ff);
55 void term_include_exclude_files(FF_PKT *ff);
56 void add_fname_to_include_list(FF_PKT *ff, int prefixed, const char *fname);
57 void add_fname_to_exclude_list(FF_PKT *ff, const char *fname);
58 int file_is_excluded(FF_PKT *ff, const char *file);
59 int file_is_included(FF_PKT *ff, const char *file);
60 struct s_included_file *get_next_included_file(FF_PKT *ff,
61 struct s_included_file *inc);
64 int find_one_file(JCR *jcr, FF_PKT *ff,
65 int handle_file(FF_PKT *ff_pkt, void *hpkt, bool top_level),
66 void *pkt, char *p, dev_t parent_device, bool top_level);
67 int term_find_one(FF_PKT *ff);
71 int enable_backup_privileges(JCR *jcr, int ignore_errors);
75 int make_path(JCR *jcr, const char *argpath, int mode,
76 int parent_mode, uid_t owner, gid_t group,
77 int preserve_existing, char *verbose_fmt_string);
80 bool fstype(const char *fname, char *fs, int fslen);
82 /* from drivetype.c */
83 bool drivetype(const char *fname, char *fs, int fslen);
85 /* from bfile.c -- see bfile.h */