2 * Prototypes for finlib directory of Bacula
7 Copyright (C) 2000-2005 Kern Sibbald
9 This program is free software; you can redistribute it and/or
10 modify it under the terms of the GNU General Public License as
11 published by the Free Software Foundation; either version 2 of
12 the License, or (at your option) any later version.
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 General Public License for more details.
19 You should have received a copy of the GNU General Public
20 License along with this program; if not, write to the Free
21 Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
26 void encode_stat (char *buf, FF_PKT *ff_pkt, int data_stream);
27 int decode_stat (char *buf, struct stat *statp, int32_t *LinkFI);
28 int32_t decode_LinkFI (char *buf, struct stat *statp);
29 int encode_attribsEx (JCR *jcr, char *attribsEx, FF_PKT *ff_pkt);
30 bool set_attributes (JCR *jcr, ATTR *attr, BFILE *ofd);
31 int select_data_stream(FF_PKT *ff_pkt);
33 /* from create_file.c */
34 int create_file (JCR *jcr, ATTR *attr, BFILE *ofd, int replace);
37 FF_PKT *init_find_files();
38 void set_find_options(FF_PKT *ff, int incremental, time_t mtime);
39 int find_files(JCR *jcr, FF_PKT *ff, int sub(FF_PKT *ff_pkt, void *hpkt, bool), void *pkt);
40 int match_files(JCR *jcr, FF_PKT *ff, int sub(FF_PKT *ff_pkt, void *hpkt, bool), void *pkt);
41 int term_find_files(FF_PKT *ff);
44 void init_include_exclude_files(FF_PKT *ff);
45 void term_include_exclude_files(FF_PKT *ff);
46 void add_fname_to_include_list(FF_PKT *ff, int prefixed, const char *fname);
47 void add_fname_to_exclude_list(FF_PKT *ff, const char *fname);
48 int file_is_excluded(FF_PKT *ff, const char *file);
49 int file_is_included(FF_PKT *ff, const char *file);
50 struct s_included_file *get_next_included_file(FF_PKT *ff,
51 struct s_included_file *inc);
54 int find_one_file(JCR *jcr, FF_PKT *ff,
55 int handle_file(FF_PKT *ff_pkt, void *hpkt, bool top_level),
56 void *pkt, char *p, dev_t parent_device, bool top_level);
57 int term_find_one(FF_PKT *ff);
61 int enable_backup_privileges(JCR *jcr, int ignore_errors);
65 int make_path(JCR *jcr, const char *argpath, int mode,
66 int parent_mode, uid_t owner, gid_t group,
67 int preserve_existing, char *verbose_fmt_string);
70 bool fstype(const char *fname, char *fs, int fslen);
72 /* from bfile.c -- see bfile.h */