You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
29 lines
737 B
29 lines
737 B
![]()
2 years ago
|
#ifndef SYMLINKS_H
|
||
|
#define SYMLINKS_H
|
||
|
|
||
|
#include "strbuf.h"
|
||
|
|
||
|
struct cache_def {
|
||
|
struct strbuf path;
|
||
|
int flags;
|
||
|
int track_flags;
|
||
|
int prefix_len_stat_func;
|
||
|
};
|
||
|
#define CACHE_DEF_INIT { \
|
||
|
.path = STRBUF_INIT, \
|
||
|
}
|
||
|
static inline void cache_def_clear(struct cache_def *cache)
|
||
|
{
|
||
|
strbuf_release(&cache->path);
|
||
|
}
|
||
|
|
||
|
int has_symlink_leading_path(const char *name, int len);
|
||
|
int threaded_has_symlink_leading_path(struct cache_def *, const char *, int);
|
||
|
int check_leading_path(const char *name, int len, int warn_on_lstat_err);
|
||
|
int has_dirs_only_path(const char *name, int len, int prefix_len);
|
||
|
void invalidate_lstat_cache(void);
|
||
|
void schedule_dir_for_removal(const char *name, int len);
|
||
|
void remove_scheduled_dirs(void);
|
||
|
|
||
|
#endif /* SYMLINKS_H */
|