}
static int cli_linter_result(pakfire_ctx* ctx, pakfire_archive* archive,
- struct pakfire_package* package, struct pakfire_file* file, int priority,
+ struct pakfire_package* package, pakfire_file* file, int priority,
const char* result, void* data) {
const char* nevra = pakfire_package_get_string(package, PAKFIRE_PKG_NEVRA);
static int pakfire_archive_extract_one(pakfire_archive* archive,
struct archive* a, struct archive_entry* entry, void* data) {
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
struct vfs_cap_data cap_data = {};
char buffer[PATH_MAX];
int r;
static int __pakfire_archive_load_filelist(pakfire_archive* archive,
struct archive* a, struct archive_entry* entry, void* data) {
pakfire_filelist* filelist = data;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// Generate a file object
}
static int pakfire_archive_writer_write_entry(pakfire_archive_writer* self,
- struct pakfire_file* file, struct archive_entry* entry) {
+ pakfire_file* file, struct archive_entry* entry) {
FILE* f = NULL;
int r;
}
static int pakfire_archive_writer_write_file(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
pakfire_archive_writer* self = data;
struct archive_entry* sparse_entry = NULL;
struct archive_entry* entry = NULL;
}
static int pakfire_build_find_pkgconfig_provides(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
int r;
// Fetch the absolute path
}
static int pakfire_build_find_pkgconfig_requires(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
pakfire_env* env = NULL;
int r;
}
static int pakfire_build_find_elf_provides(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
pakfire_elf* elf = NULL;
char** provides = NULL;
int r;
}
static int pakfire_build_find_elf_requires(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
pakfire_elf* elf = NULL;
char** requires = NULL;
int r;
}
static int pakfire_build_find_python_abi_requires(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
char basename[PATH_MAX];
const char* p = NULL;
int r;
}
static int pakfire_build_find_symlink_destinations(
- pakfire_ctx* ctx, struct pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
+ pakfire_ctx* ctx, pakfire_file* file, struct pakfire_find_deps_ctx* deps) {
const char* symlink = NULL;
const char* path = NULL;
char buffer[PATH_MAX];
}
static int pakfire_build_find_provides(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_find_deps_ctx* deps = data;
int r;
}
static int pakfire_build_find_requires(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_find_deps_ctx* deps = data;
int r;
*/
static int pakfire_build_find_perl_files(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
pakfire_filelist* perlfiles = data;
// Add all perl files
}
static int __pakfire_build_package_mark_config_files(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
char** configfiles = data;
int r;
}
static int __pakfire_build_remove_static_libraries(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
const pakfire_build_post_process_state* state = data;
char path[PATH_MAX];
int r;
}
static int __pakfire_build_remove_libtool_archives(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
const pakfire_build_post_process_state* state = data;
// Find all libtool archive files
}
static int __pakfire_build_check_broken_symlinks(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
const pakfire_build_post_process_state* state = data;
int r;
}
static int pakfire_build_fix_script_interpreter(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
// Only run this for regular files
switch (pakfire_file_get_type(file)) {
case S_IFREG:
}
static int pakfire_build_check_buildroot(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
const pakfire_build_post_process_state* state = data;
int r;
}
static int __pakfire_build_unpackaged_file(
- pakfire_ctx* ctx, struct pakfire_file* file, void* p) {
+ pakfire_ctx* ctx, pakfire_file* file, void* p) {
char* s = pakfire_file_dump(file, PAKFIRE_FILE_DUMP_FULL);
if (s) {
ERROR(ctx, "%s\n", s);
}
static int pakfire_db_bind_checksum(pakfire_db* db, sqlite3_stmt* stmt,
- const int field, struct pakfire_file* file, const enum pakfire_hash_type type) {
+ const int field, pakfire_file* file, const enum pakfire_hash_type type) {
const unsigned char* checksum = NULL;
size_t checksum_length = 0;
int r;
}
for (unsigned int i = 0; i < pakfire_filelist_length(filelist); i++) {
- struct pakfire_file* file = pakfire_filelist_get(filelist, i);
+ pakfire_file* file = pakfire_filelist_get(filelist, i);
// Bind package ID
r = sqlite3_bind_int64(stmt, 1, id);
return r;
}
-static int pakfire_db_load_file_checksum(pakfire_db* db, struct pakfire_file* file,
+static int pakfire_db_load_file_checksum(pakfire_db* db, pakfire_file* file,
sqlite3_stmt* stmt, const enum pakfire_hash_type type, const int field) {
// Fetch checksum
const unsigned char* checksum = sqlite3_column_blob(stmt, field);
static int pakfire_db_load_file(pakfire_db* db, pakfire_filelist* filelist,
sqlite3_stmt* stmt) {
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// Path
}
int pakfire_elf_open_file(pakfire_elf** elf,
- pakfire_ctx* ctx, struct pakfire_file* file) {
+ pakfire_ctx* ctx, pakfire_file* file) {
const char* path = NULL;
int fd = -EBADF;
int r;
int pakfire_elf_open(pakfire_elf** elf,
pakfire_ctx* ctx, const char* path, int fd);
int pakfire_elf_open_file(pakfire_elf** elf,
- pakfire_ctx* ctx, struct pakfire_file* file);
+ pakfire_ctx* ctx, pakfire_file* file);
pakfire_elf* pakfire_elf_ref(pakfire_elf* self);
pakfire_elf* pakfire_elf_unref(pakfire_elf* self);
};
static const struct pakfire_fhs_check* pakfire_fhs_find_check(
- pakfire_ctx* ctx, struct pakfire_file* file) {
+ pakfire_ctx* ctx, pakfire_file* file) {
const struct pakfire_fhs_check* check = NULL;
char path[PATH_MAX];
int r;
}
static int pakfire_fhs_check_world_writable(
- pakfire_ctx* ctx, struct pakfire_file* file) {
+ pakfire_ctx* ctx, pakfire_file* file) {
// Run this check only for regular files
switch (pakfire_file_get_type(file)) {
case S_IFREG:
}
static int pakfire_fhs_check_perms(pakfire_ctx* ctx,
- const struct pakfire_fhs_check* check, struct pakfire_file* file) {
+ const struct pakfire_fhs_check* check, pakfire_file* file) {
// No permissions defined. Skipping check...
if (!check->perms)
return 0;
}
static int pakfire_fhs_check_ownership(pakfire_ctx* ctx,
- const struct pakfire_fhs_check* check, struct pakfire_file* file) {
+ const struct pakfire_fhs_check* check, pakfire_file* file) {
const char* path = pakfire_file_get_path(file);
// Check uname
}
static int pakfire_fhs_check_noexec(pakfire_ctx* ctx,
- const struct pakfire_fhs_check* check, struct pakfire_file* file) {
+ const struct pakfire_fhs_check* check, pakfire_file* file) {
// Skip this check if PAKFIRE_FHS_CHECK_NOEXEC is not set
if (!(check->flags & PAKFIRE_FHS_CHECK_NOEXEC))
return 0;
return 0;
}
-int pakfire_fhs_check_file(pakfire_ctx* ctx, struct pakfire_file* file) {
+int pakfire_fhs_check_file(pakfire_ctx* ctx, pakfire_file* file) {
const struct pakfire_fhs_check* check = NULL;
int status = 0;
int r;
PAKFIRE_FHS_NOEXEC = (1 << 5),
};
-int pakfire_fhs_check_file(pakfire_ctx* ctx, struct pakfire_file* file);
+int pakfire_fhs_check_file(pakfire_ctx* ctx, pakfire_file* file);
#endif /* PAKFIRE_FHS_H */
/*
Capabilities
*/
-static int pakfire_file_read_fcaps(struct pakfire_file* file,
+static int pakfire_file_read_fcaps(pakfire_file* file,
const struct vfs_cap_data* cap_data, size_t length) {
int max = 0;
int r;
return r;
}
-int pakfire_file_write_fcaps(struct pakfire_file* file, struct vfs_cap_data* cap_data) {
+int pakfire_file_write_fcaps(pakfire_file* file, struct vfs_cap_data* cap_data) {
cap_flag_value_t cap_permitted;
cap_flag_value_t cap_inheritable;
cap_flag_value_t cap_effective;
return r;
}
-static int pakfire_file_from_archive_entry(struct pakfire_file* file, struct archive_entry* entry) {
+static int pakfire_file_from_archive_entry(pakfire_file* file, struct archive_entry* entry) {
char path[PATH_MAX];
char* buffer = NULL;
const char* attr = NULL;
return r;
}
-int pakfire_file_create(struct pakfire_file** file,
+int pakfire_file_create(pakfire_file** file,
struct pakfire* pakfire, const char* path) {
- struct pakfire_file* f = NULL;
+ pakfire_file* f = NULL;
int r = 0;
// Allocate a new object
return r;
}
-static int pakfire_file_compute_hashes(struct pakfire_file* file,
+static int pakfire_file_compute_hashes(pakfire_file* file,
const enum pakfire_hash_type types, struct pakfire_hashes* hashes) {
FILE* f = NULL;
int r;
return r;
}
-int pakfire_file_create_from_archive_entry(struct pakfire_file** file, struct pakfire* pakfire,
+int pakfire_file_create_from_archive_entry(pakfire_file** file, struct pakfire* pakfire,
struct archive_entry* entry) {
- struct pakfire_file* f = NULL;
+ pakfire_file* f = NULL;
int r;
r = pakfire_file_create(&f, pakfire, NULL);
return r;
}
-struct archive_entry* pakfire_file_archive_entry(struct pakfire_file* file, const enum pakfire_hash_type hashes) {
+struct archive_entry* pakfire_file_archive_entry(pakfire_file* file, const enum pakfire_hash_type hashes) {
struct archive_entry* entry = NULL;
struct vfs_cap_data cap_data = {};
int r;
return NULL;
}
-static void pakfire_file_free(struct pakfire_file* file) {
+static void pakfire_file_free(pakfire_file* file) {
// Free capabilities
if (file->caps)
cap_free(file->caps);
free(file);
}
-struct pakfire_file* pakfire_file_ref(struct pakfire_file* file) {
+pakfire_file* pakfire_file_ref(pakfire_file* file) {
file->nrefs++;
return file;
}
-struct pakfire_file* pakfire_file_unref(struct pakfire_file* file) {
+pakfire_file* pakfire_file_unref(pakfire_file* file) {
if (--file->nrefs > 0)
return file;
Flags
*/
-int pakfire_file_has_flag(struct pakfire_file* file, int flag) {
+int pakfire_file_has_flag(pakfire_file* file, int flag) {
return file->flags & flag;
}
-int pakfire_file_set_flags(struct pakfire_file* file, int flag) {
+int pakfire_file_set_flags(pakfire_file* file, int flag) {
file->flags |= flag;
return 0;
#define pakfire_file_strmode(file, buffer) \
__pakfire_file_strmode(file, buffer, sizeof(buffer))
-static int __pakfire_file_strmode(struct pakfire_file* file, char* s, const size_t length) {
+static int __pakfire_file_strmode(pakfire_file* file, char* s, const size_t length) {
const char* hardlink = NULL;
int r;
return 0;
}
-char* pakfire_file_dump(struct pakfire_file* file, int flags) {
+char* pakfire_file_dump(pakfire_file* file, int flags) {
char buffer[LINE_MAX] = "";
char mode[12];
char time[32];
return strdup(buffer);
}
-int pakfire_file_cmp(struct pakfire_file* file1, struct pakfire_file* file2) {
+int pakfire_file_cmp(pakfire_file* file1, pakfire_file* file2) {
const char* path1 = pakfire_file_get_path(file1);
const char* path2 = pakfire_file_get_path(file2);
return strcmp(path1, path2);
}
-const char* pakfire_file_get_abspath(struct pakfire_file* file) {
+const char* pakfire_file_get_abspath(pakfire_file* file) {
return archive_entry_sourcepath(file->entry);
}
-const char* pakfire_file_get_path(struct pakfire_file* file) {
+const char* pakfire_file_get_path(pakfire_file* file) {
return archive_entry_pathname(file->entry);
}
-int pakfire_file_set_path(struct pakfire_file* file, const char* path) {
+int pakfire_file_set_path(pakfire_file* file, const char* path) {
char buffer[PATH_MAX];
int r = 0;
return 0;
}
-const char* pakfire_file_get_hardlink(struct pakfire_file* file) {
+const char* pakfire_file_get_hardlink(pakfire_file* file) {
return archive_entry_hardlink(file->entry);
}
-void pakfire_file_set_hardlink(struct pakfire_file* file, const char* link) {
+void pakfire_file_set_hardlink(pakfire_file* file, const char* link) {
archive_entry_set_hardlink(file->entry, link);
}
-const char* pakfire_file_get_symlink(struct pakfire_file* file) {
+const char* pakfire_file_get_symlink(pakfire_file* file) {
return archive_entry_symlink(file->entry);
}
-void pakfire_file_set_symlink(struct pakfire_file* file, const char* link) {
+void pakfire_file_set_symlink(pakfire_file* file, const char* link) {
archive_entry_set_symlink(file->entry, link);
}
-nlink_t pakfire_file_get_nlink(struct pakfire_file* file) {
+nlink_t pakfire_file_get_nlink(pakfire_file* file) {
return archive_entry_nlink(file->entry);
}
-void pakfire_file_set_nlink(struct pakfire_file* file, const nlink_t nlink) {
+void pakfire_file_set_nlink(pakfire_file* file, const nlink_t nlink) {
archive_entry_set_nlink(file->entry, nlink);
}
-ino_t pakfire_file_get_inode(struct pakfire_file* file) {
+ino_t pakfire_file_get_inode(pakfire_file* file) {
return archive_entry_ino64(file->entry);
}
-void pakfire_file_set_inode(struct pakfire_file* file, const ino_t ino) {
+void pakfire_file_set_inode(pakfire_file* file, const ino_t ino) {
archive_entry_set_ino64(file->entry, ino);
}
-dev_t pakfire_file_get_dev(struct pakfire_file* file) {
+dev_t pakfire_file_get_dev(pakfire_file* file) {
return archive_entry_dev(file->entry);
}
-void pakfire_file_set_dev(struct pakfire_file* file, const dev_t dev) {
+void pakfire_file_set_dev(pakfire_file* file, const dev_t dev) {
archive_entry_set_dev(file->entry, dev);
}
-int pakfire_file_get_type(struct pakfire_file* file) {
+int pakfire_file_get_type(pakfire_file* file) {
return archive_entry_filetype(file->entry);
}
-off_t pakfire_file_get_size(struct pakfire_file* file) {
+off_t pakfire_file_get_size(pakfire_file* file) {
return archive_entry_size(file->entry);
}
-void pakfire_file_set_size(struct pakfire_file* file, off_t size) {
+void pakfire_file_set_size(pakfire_file* file, off_t size) {
archive_entry_set_size(file->entry, size);
}
-const char* pakfire_file_get_uname(struct pakfire_file* file) {
+const char* pakfire_file_get_uname(pakfire_file* file) {
return archive_entry_uname(file->entry);
}
-int pakfire_file_set_uname(struct pakfire_file* file, const char* uname) {
+int pakfire_file_set_uname(pakfire_file* file, const char* uname) {
archive_entry_set_uname(file->entry, uname);
return 0;
}
-const char* pakfire_file_get_gname(struct pakfire_file* file) {
+const char* pakfire_file_get_gname(pakfire_file* file) {
return archive_entry_gname(file->entry);
}
-int pakfire_file_set_gname(struct pakfire_file* file, const char* gname) {
+int pakfire_file_set_gname(pakfire_file* file, const char* gname) {
archive_entry_set_gname(file->entry, gname);
return 0;
}
-mode_t pakfire_file_get_mode(struct pakfire_file* file) {
+mode_t pakfire_file_get_mode(pakfire_file* file) {
return archive_entry_mode(file->entry);
}
-void pakfire_file_set_mode(struct pakfire_file* file, mode_t mode) {
+void pakfire_file_set_mode(pakfire_file* file, mode_t mode) {
archive_entry_set_mode(file->entry, mode);
}
-mode_t pakfire_file_get_perms(struct pakfire_file* file) {
+mode_t pakfire_file_get_perms(pakfire_file* file) {
return archive_entry_perm(file->entry);
}
-void pakfire_file_set_perms(struct pakfire_file* file, const mode_t perms) {
+void pakfire_file_set_perms(pakfire_file* file, const mode_t perms) {
archive_entry_set_mode(file->entry, pakfire_file_get_type(file) | perms);
}
-int pakfire_file_is_executable(struct pakfire_file* file) {
+int pakfire_file_is_executable(pakfire_file* file) {
return pakfire_file_get_mode(file) & (S_IXUSR|S_IXGRP|S_IXOTH);
}
-time_t pakfire_file_get_ctime(struct pakfire_file* file) {
+time_t pakfire_file_get_ctime(pakfire_file* file) {
return archive_entry_ctime(file->entry);
}
-void pakfire_file_set_ctime(struct pakfire_file* file, time_t time) {
+void pakfire_file_set_ctime(pakfire_file* file, time_t time) {
archive_entry_set_ctime(file->entry, time, 0);
}
-time_t pakfire_file_get_mtime(struct pakfire_file* file) {
+time_t pakfire_file_get_mtime(pakfire_file* file) {
return archive_entry_mtime(file->entry);
}
-void pakfire_file_set_mtime(struct pakfire_file* file, time_t time) {
+void pakfire_file_set_mtime(pakfire_file* file, time_t time) {
archive_entry_set_mtime(file->entry, time, 0);
}
-int pakfire_file_has_payload(struct pakfire_file* file) {
+int pakfire_file_has_payload(pakfire_file* file) {
// File must be a regular file
switch (pakfire_file_get_type(file)) {
case S_IFREG:
return pakfire_file_get_size(file) > 0;
}
-int pakfire_file_get_checksum(struct pakfire_file* file, const enum pakfire_hash_type type,
+int pakfire_file_get_checksum(pakfire_file* file, const enum pakfire_hash_type type,
const unsigned char** checksum, size_t* checksum_length) {
int r;
return 0;
}
-int pakfire_file_set_checksum(struct pakfire_file* file, const enum pakfire_hash_type type,
+int pakfire_file_set_checksum(pakfire_file* file, const enum pakfire_hash_type type,
const unsigned char* checksum, const size_t checksum_length) {
int r;
return 0;
}
-int pakfire_file_has_caps(struct pakfire_file* file) {
+int pakfire_file_has_caps(pakfire_file* file) {
if (file->caps)
return 1;
return 0;
}
-char* pakfire_file_get_caps(struct pakfire_file* file) {
+char* pakfire_file_get_caps(pakfire_file* file) {
char* copy = NULL;
char* text = NULL;
ssize_t length = 0;
return copy;
}
-static int pakfire_file_levels(struct pakfire_file* file) {
+static int pakfire_file_levels(pakfire_file* file) {
const char* path = pakfire_file_get_path(file);
if (!path)
return 0;
return levels;
}
-int pakfire_file_open(struct pakfire_file* file, int flags) {
+int pakfire_file_open(pakfire_file* file, int flags) {
const char* path = NULL;
int fd = -EBADF;
return fd;
}
-FILE* pakfire_file_fopen(struct pakfire_file* file, const char* mode) {
+FILE* pakfire_file_fopen(pakfire_file* file, const char* mode) {
const char* path = NULL;
FILE* f = NULL;
/*
Opens the file and returns a mapping of the payload in memory
*/
-static int pakfire_file_mmap(struct pakfire_file* file, char** data, size_t* length) {
+static int pakfire_file_mmap(pakfire_file* file, char** data, size_t* length) {
int fd = -EBADF;
int r;
return r;
}
-int pakfire_file_contains(struct pakfire_file* file, const char* needle, ssize_t length) {
+int pakfire_file_contains(pakfire_file* file, const char* needle, ssize_t length) {
char* haystack = NULL;
size_t l = 0;
int pos;
return r;
}
-static int pakfire_file_remove(struct pakfire_file* file) {
+static int pakfire_file_remove(pakfire_file* file) {
int r;
const char* path = pakfire_file_get_path(file);
return r;
}
-int pakfire_file_symlink_target_exists(struct pakfire_file* file) {
+int pakfire_file_symlink_target_exists(pakfire_file* file) {
const mode_t mode = pakfire_file_get_mode(file);
// Fail if this got called for anything that isn't a symlink
MIME Type
*/
-int pakfire_file_detect_mimetype(struct pakfire_file* file) {
+int pakfire_file_detect_mimetype(pakfire_file* file) {
const mode_t mode = pakfire_file_get_mode(file);
// Only process regular files
return pakfire_file_set_mimetype(file, mimetype);
}
-const char* pakfire_file_get_mimetype(struct pakfire_file* file) {
+const char* pakfire_file_get_mimetype(pakfire_file* file) {
// Return nothing on an empty mimetype
if (!*file->mimetype)
return NULL;
}
int pakfire_file_set_mimetype(
- struct pakfire_file* file, const char* mimetype) {
+ pakfire_file* file, const char* mimetype) {
// Store the value
return pakfire_string_set(file->mimetype, mimetype);
}
Classification
*/
-static int pakfire_file_classify_mode(struct pakfire_file* file) {
+static int pakfire_file_classify_mode(pakfire_file* file) {
const mode_t mode = pakfire_file_get_mode(file);
// Check for regular files
{ NULL },
};
-static int pakfire_file_classify_pattern(struct pakfire_file* file) {
+static int pakfire_file_classify_pattern(pakfire_file* file) {
for (const struct pattern* p = patterns; p->pattern; p++) {
if (pakfire_file_matches(file, p->pattern)) {
file->class |= p->class;
{ NULL, 0 },
};
-static int pakfire_file_classify_magic(struct pakfire_file* file) {
+static int pakfire_file_classify_magic(pakfire_file* file) {
int r;
// Detect the MIME type
return 0;
}
-static int pakfire_file_classify_elf(struct pakfire_file* file) {
+static int pakfire_file_classify_elf(pakfire_file* file) {
pakfire_elf* elf = NULL;
int r;
return r;
}
-int pakfire_file_classify(struct pakfire_file* file) {
+int pakfire_file_classify(pakfire_file* file) {
int r;
if (!file->class) {
return r;
}
-int pakfire_file_matches_class(struct pakfire_file* file, const int class) {
+int pakfire_file_matches_class(pakfire_file* file, const int class) {
return pakfire_file_classify(file) & class;
}
It will try to delete any parent directories as well and ignore if directories
cannot be deleted because they might contain other files
*/
-int pakfire_file_cleanup(struct pakfire_file* file, int flags) {
+int pakfire_file_cleanup(pakfire_file* file, int flags) {
char path[PATH_MAX];
// Try removing the file
return 0;
}
-static int pakfire_file_verify_mode(struct pakfire_file* file, const struct stat* st) {
+static int pakfire_file_verify_mode(pakfire_file* file, const struct stat* st) {
const mode_t type = pakfire_file_get_type(file);
// Did the type change?
return 0;
}
-static int pakfire_file_verify_size(struct pakfire_file* file, const struct stat* st) {
+static int pakfire_file_verify_size(pakfire_file* file, const struct stat* st) {
const ssize_t size = pakfire_file_get_size(file);
// Nothing to do if size matches
return 0;
}
-static int pakfire_file_verify_ownership(struct pakfire_file* file, const struct stat* st) {
+static int pakfire_file_verify_ownership(pakfire_file* file, const struct stat* st) {
// Fetch UID/GID
#if 0
const uid_t uid = pakfire_unmap_id(file->pakfire, st->st_uid);
return 0;
}
-static int pakfire_file_verify_timestamps(struct pakfire_file* file, const struct stat* st) {
+static int pakfire_file_verify_timestamps(pakfire_file* file, const struct stat* st) {
const time_t ctime = pakfire_file_get_ctime(file);
const time_t mtime = pakfire_file_get_mtime(file);
return 0;
}
-static int pakfire_file_verify_payload(struct pakfire_file* file, const struct stat* st) {
+static int pakfire_file_verify_payload(pakfire_file* file, const struct stat* st) {
struct pakfire_hashes computed_hashes = {};
int r;
/*
Verify the file - i.e. does the metadata match what is on disk?
*/
-int pakfire_file_verify(struct pakfire_file* file, int* status) {
+int pakfire_file_verify(pakfire_file* file, int* status) {
struct stat st;
int r;
return 0;
}
-int pakfire_file_matches(struct pakfire_file* file, const char* pattern) {
+int pakfire_file_matches(pakfire_file* file, const char* pattern) {
// Don't match on no pattern
if (!pattern)
return 0;
return pakfire_path_match(pattern, path);
}
-static int pakfire_file_fconsume(struct pakfire_file* file, FILE* src) {
+static int pakfire_file_fconsume(pakfire_file* file, FILE* src) {
FILE* dst = NULL;
int fd = -EBADF;
int r;
return r;
}
-int pakfire_file_consume(struct pakfire_file* file, int srcfd) {
+int pakfire_file_consume(pakfire_file* file, int srcfd) {
ssize_t bytes_written = 0;
struct stat st = {};
int fd = -EBADF;
return r;
}
-int pakfire_file_fix_interpreter(struct pakfire_file* file) {
+int pakfire_file_fix_interpreter(pakfire_file* file) {
const char* interpreter = NULL;
char* buffer = NULL;
FILE* f = NULL;
#include <archive.h>
#include <archive_entry.h>
-struct pakfire_file;
+typedef struct pakfire_file pakfire_file;
#include <pakfire/hashes.h>
#include <pakfire/pakfire.h>
PAKFIRE_FILE_CONFIG = (1 << 0),
};
-int pakfire_file_create(struct pakfire_file** file, struct pakfire* pakfire, const char* path);
+int pakfire_file_create(pakfire_file** file, struct pakfire* pakfire, const char* path);
-struct pakfire_file* pakfire_file_ref(struct pakfire_file* file);
-struct pakfire_file* pakfire_file_unref(struct pakfire_file* file);
+pakfire_file* pakfire_file_ref(pakfire_file* file);
+pakfire_file* pakfire_file_unref(pakfire_file* file);
-int pakfire_file_has_flag(struct pakfire_file* file, int flag);
-int pakfire_file_set_flags(struct pakfire_file* file, int flag);
+int pakfire_file_has_flag(pakfire_file* file, int flag);
+int pakfire_file_set_flags(pakfire_file* file, int flag);
-int pakfire_file_cmp(struct pakfire_file* file1, struct pakfire_file* file2);
+int pakfire_file_cmp(pakfire_file* file1, pakfire_file* file2);
-const char* pakfire_file_get_path(struct pakfire_file* file);
-int pakfire_file_set_path(struct pakfire_file* file, const char* path);
+const char* pakfire_file_get_path(pakfire_file* file);
+int pakfire_file_set_path(pakfire_file* file, const char* path);
-const char* pakfire_file_get_hardlink(struct pakfire_file* file);
-void pakfire_file_set_hardlink(struct pakfire_file* file, const char* link);
-const char* pakfire_file_get_symlink(struct pakfire_file* file);
-void pakfire_file_set_symlink(struct pakfire_file* file, const char* link);
+const char* pakfire_file_get_hardlink(pakfire_file* file);
+void pakfire_file_set_hardlink(pakfire_file* file, const char* link);
+const char* pakfire_file_get_symlink(pakfire_file* file);
+void pakfire_file_set_symlink(pakfire_file* file, const char* link);
-nlink_t pakfire_file_get_nlink(struct pakfire_file* file);
-void pakfire_file_set_nlink(struct pakfire_file* file, const nlink_t nlink);
+nlink_t pakfire_file_get_nlink(pakfire_file* file);
+void pakfire_file_set_nlink(pakfire_file* file, const nlink_t nlink);
-ino_t pakfire_file_get_inode(struct pakfire_file* file);
-void pakfire_file_set_inode(struct pakfire_file* file, const ino_t ino);
+ino_t pakfire_file_get_inode(pakfire_file* file);
+void pakfire_file_set_inode(pakfire_file* file, const ino_t ino);
-dev_t pakfire_file_get_dev(struct pakfire_file* file);
-void pakfire_file_set_dev(struct pakfire_file* file, const dev_t dev);
+dev_t pakfire_file_get_dev(pakfire_file* file);
+void pakfire_file_set_dev(pakfire_file* file, const dev_t dev);
-int pakfire_file_get_type(struct pakfire_file* file);
+int pakfire_file_get_type(pakfire_file* file);
-ssize_t pakfire_file_get_size(struct pakfire_file* file);
-void pakfire_file_set_size(struct pakfire_file* file, ssize_t size);
+ssize_t pakfire_file_get_size(pakfire_file* file);
+void pakfire_file_set_size(pakfire_file* file, ssize_t size);
-const char* pakfire_file_get_uname(struct pakfire_file* file);
-int pakfire_file_set_uname(struct pakfire_file* file, const char* uname);
+const char* pakfire_file_get_uname(pakfire_file* file);
+int pakfire_file_set_uname(pakfire_file* file, const char* uname);
-const char* pakfire_file_get_gname(struct pakfire_file* file);
-int pakfire_file_set_gname(struct pakfire_file* file, const char* gname);
+const char* pakfire_file_get_gname(pakfire_file* file);
+int pakfire_file_set_gname(pakfire_file* file, const char* gname);
-mode_t pakfire_file_get_mode(struct pakfire_file* file);
-void pakfire_file_set_mode(struct pakfire_file* file, mode_t mode);
+mode_t pakfire_file_get_mode(pakfire_file* file);
+void pakfire_file_set_mode(pakfire_file* file, mode_t mode);
-mode_t pakfire_file_get_perms(struct pakfire_file* file);
-void pakfire_file_set_perms(struct pakfire_file* file, const mode_t perms);
+mode_t pakfire_file_get_perms(pakfire_file* file);
+void pakfire_file_set_perms(pakfire_file* file, const mode_t perms);
-time_t pakfire_file_get_ctime(struct pakfire_file* file);
-void pakfire_file_set_ctime(struct pakfire_file* file, time_t time);
-time_t pakfire_file_get_mtime(struct pakfire_file* file);
-void pakfire_file_set_mtime(struct pakfire_file* file, time_t time);
+time_t pakfire_file_get_ctime(pakfire_file* file);
+void pakfire_file_set_ctime(pakfire_file* file, time_t time);
+time_t pakfire_file_get_mtime(pakfire_file* file);
+void pakfire_file_set_mtime(pakfire_file* file, time_t time);
// Checksums
-int pakfire_file_get_checksum(struct pakfire_file* file, const enum pakfire_hash_type type,
+int pakfire_file_get_checksum(pakfire_file* file, const enum pakfire_hash_type type,
const unsigned char** checksum, size_t* checksum_length);
-int pakfire_file_set_checksum(struct pakfire_file* file, const enum pakfire_hash_type type,
+int pakfire_file_set_checksum(pakfire_file* file, const enum pakfire_hash_type type,
const unsigned char* checksum, const size_t checksum_length);
// Capabilities
-int pakfire_file_has_caps(struct pakfire_file* file);
-char* pakfire_file_get_caps(struct pakfire_file* file);
+int pakfire_file_has_caps(pakfire_file* file);
+char* pakfire_file_get_caps(pakfire_file* file);
// MIME Type
-const char* pakfire_file_get_mimetype(struct pakfire_file* file);
-int pakfire_file_set_mimetype(struct pakfire_file* file, const char* mimetype);
+const char* pakfire_file_get_mimetype(pakfire_file* file);
+int pakfire_file_set_mimetype(pakfire_file* file, const char* mimetype);
-struct pakfire_file* pakfire_file_parse_from_file(const char* list, unsigned int format);
+pakfire_file* pakfire_file_parse_from_file(const char* list, unsigned int format);
-int pakfire_file_matches(struct pakfire_file* file, const char* pattern);
+int pakfire_file_matches(pakfire_file* file, const char* pattern);
enum pakfire_file_classes {
PAKFIRE_FILE_UNKNOWN = 0,
PAKFIRE_FILE_PERL = (1 << 10),
};
-int pakfire_file_is_executable(struct pakfire_file* file);
+int pakfire_file_is_executable(pakfire_file* file);
-int pakfire_file_has_payload(struct pakfire_file* file);
+int pakfire_file_has_payload(pakfire_file* file);
-int pakfire_file_write_fcaps(struct pakfire_file* file, struct vfs_cap_data* cap_data);
+int pakfire_file_write_fcaps(pakfire_file* file, struct vfs_cap_data* cap_data);
-int pakfire_file_create_from_archive_entry(struct pakfire_file** file, struct pakfire* pakfire,
+int pakfire_file_create_from_archive_entry(pakfire_file** file, struct pakfire* pakfire,
struct archive_entry* entry);
-struct archive_entry* pakfire_file_archive_entry(struct pakfire_file* file, const enum pakfire_hash_type hashes);
+struct archive_entry* pakfire_file_archive_entry(pakfire_file* file, const enum pakfire_hash_type hashes);
enum pakfire_file_dump_flags {
PAKFIRE_FILE_DUMP_MODE = (1 << 0),
PAKFIRE_FILE_DUMP_LINK_TARGETS,
};
-char* pakfire_file_dump(struct pakfire_file* file, int flags);
+char* pakfire_file_dump(pakfire_file* file, int flags);
-const char* pakfire_file_get_abspath(struct pakfire_file* file);
+const char* pakfire_file_get_abspath(pakfire_file* file);
-int pakfire_file_open(struct pakfire_file* file, int flags);
-FILE* pakfire_file_fopen(struct pakfire_file* file, const char* mode);
+int pakfire_file_open(pakfire_file* file, int flags);
+FILE* pakfire_file_fopen(pakfire_file* file, const char* mode);
-int pakfire_file_contains(struct pakfire_file* file, const char* needle, ssize_t length);
+int pakfire_file_contains(pakfire_file* file, const char* needle, ssize_t length);
enum pakfire_file_cleanup_flags {
PAKFIRE_FILE_CLEANUP_TIDY = (1 << 0),
};
-int pakfire_file_cleanup(struct pakfire_file* file, int flags);
+int pakfire_file_cleanup(pakfire_file* file, int flags);
-int pakfire_file_symlink_target_exists(struct pakfire_file* file);
+int pakfire_file_symlink_target_exists(pakfire_file* file);
// MIME Type
-int pakfire_file_detect_mimetype(struct pakfire_file* file);
+int pakfire_file_detect_mimetype(pakfire_file* file);
-int pakfire_file_classify(struct pakfire_file* file);
-int pakfire_file_matches_class(struct pakfire_file* file, const int class);
+int pakfire_file_classify(pakfire_file* file);
+int pakfire_file_matches_class(pakfire_file* file, const int class);
-int pakfire_file_verify(struct pakfire_file* file, int* status);
+int pakfire_file_verify(pakfire_file* file, int* status);
-int pakfire_file_consume(struct pakfire_file* file, int srcfd);
+int pakfire_file_consume(pakfire_file* file, int srcfd);
-int pakfire_file_fix_interpreter(struct pakfire_file* file);
+int pakfire_file_fix_interpreter(pakfire_file* file);
#endif /* PAKFIRE_FILE_H */
struct pakfire* pakfire;
int nrefs;
- struct pakfire_file** files;
+ pakfire_file** files;
unsigned int num_files;
};
}
}
-struct pakfire_file* pakfire_filelist_get(pakfire_filelist* list, size_t index) {
+pakfire_file* pakfire_filelist_get(pakfire_filelist* list, size_t index) {
// Check that index is in range
if (index >= list->num_files) {
errno = ERANGE;
/*
Checks if the file is already on the list
*/
-static int pakfire_filelist_has_file(pakfire_filelist* list, struct pakfire_file* file) {
+static int pakfire_filelist_has_file(pakfire_filelist* list, pakfire_file* file) {
for (unsigned int i = 0; i < list->num_files; i++) {
if (list->files[i] == file)
return i;
return -1;
}
-static int pakfire_filelist_search(pakfire_filelist* list, struct pakfire_file* file) {
+static int pakfire_filelist_search(pakfire_filelist* list, pakfire_file* file) {
int i;
int r;
return lo;
}
-int pakfire_filelist_add(pakfire_filelist* list, struct pakfire_file* file) {
+int pakfire_filelist_add(pakfire_filelist* list, pakfire_file* file) {
// Do not do anything if the file is already on the list
if (pakfire_filelist_has_file(list, file) >= 0)
return 0;
return 0;
}
-static int pakfire_filelist_remove(pakfire_filelist* list, struct pakfire_file* file) {
+static int pakfire_filelist_remove(pakfire_filelist* list, pakfire_file* file) {
// Check if the file is on the list
int pos = pakfire_filelist_has_file(list, file);
}
static int __pakfire_filelist_remove_one(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
pakfire_filelist* list = data;
// Remove the file from the given filelist
int pakfire_filelist_scan(pakfire_filelist* list, const char* root,
const char** includes, const char** excludes, int flags) {
struct archive* reader = NULL;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
struct archive_entry* entry = NULL;
pakfire_filelist_matches matches = {
.root = root,
}
static int __pakfire_filelist_dump(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
int* flags = data;
char* s = pakfire_file_dump(file, *flags);
}
static int __pakfire_filelist_matches_class(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
int* class = data;
return pakfire_file_matches_class(file, *class);
int pakfire_filelist_is_empty(pakfire_filelist* list);
void pakfire_filelist_clear(pakfire_filelist* list);
-struct pakfire_file* pakfire_filelist_get(pakfire_filelist* list, size_t index);
+pakfire_file* pakfire_filelist_get(pakfire_filelist* list, size_t index);
-int pakfire_filelist_add(pakfire_filelist* list, struct pakfire_file* file);
+int pakfire_filelist_add(pakfire_filelist* list, pakfire_file* file);
size_t pakfire_filelist_total_size(pakfire_filelist* list);
int pakfire_filelist_contains(pakfire_filelist* list, const char* pattern);
typedef int (*pakfire_filelist_walk_callback)
- (pakfire_ctx* ctx, struct pakfire_file* file, void* data);
+ (pakfire_ctx* ctx, pakfire_file* file, void* data);
enum pakfire_filelist_walk_flags {
PAKFIRE_FILELIST_SHOW_PROGRESS = (1 << 0),
ssize_t pakfire_jail_send_filelist(pakfire_ctx* ctx,
void* data, char* buffer, size_t length) {
struct pakfire_jail_filelist* input = data;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// If there is any path data left, we send that first
struct pakfire_linter* linter;
// File
- struct pakfire_file* file;
+ pakfire_file* file;
// ELF Object
pakfire_elf* elf;
}
int pakfire_linter_file_create(struct pakfire_linter_file** lfile,
- pakfire_ctx* ctx, struct pakfire_linter* linter, struct pakfire_file* file, int fd) {
+ pakfire_ctx* ctx, struct pakfire_linter* linter, pakfire_file* file, int fd) {
struct pakfire_linter_file* l = NULL;
int r = 0;
#include <pakfire/linter.h>
int pakfire_linter_file_create(struct pakfire_linter_file** lfile,
- pakfire_ctx* ctx, struct pakfire_linter* linter, struct pakfire_file* file, int fd);
+ pakfire_ctx* ctx, struct pakfire_linter* linter, pakfire_file* file, int fd);
struct pakfire_linter_file* pakfire_linter_file_ref(struct pakfire_linter_file* lfile);
struct pakfire_linter_file* pakfire_linter_file_unref(struct pakfire_linter_file* lfile);
TAILQ_ENTRY(pakfire_linter_result) nodes;
// File
- struct pakfire_file* file;
+ pakfire_file* file;
// Priority
int priority;
free(result);
}
-int pakfire_linter_result(struct pakfire_linter* linter, struct pakfire_file* file,
+int pakfire_linter_result(struct pakfire_linter* linter, pakfire_file* file,
int priority, const char* format, ...) {
struct pakfire_linter_result* result = NULL;
va_list args;
}
static int pakfire_linter_read_file(
- struct pakfire_linter* linter, struct pakfire_file* file, struct archive* a) {
+ struct pakfire_linter* linter, pakfire_file* file, struct archive* a) {
int fd = -EBADF;
int r;
}
static int pakfire_linter_payload(
- struct pakfire_linter* linter, struct pakfire_file* file, struct archive* a) {
+ struct pakfire_linter* linter, pakfire_file* file, struct archive* a) {
struct pakfire_linter_file* lfile = NULL;
int fd = -EBADF;
int r;
}
static int pakfire_linter_lint_source(
- struct pakfire_linter* linter, struct pakfire_file* file) {
+ struct pakfire_linter* linter, pakfire_file* file) {
return 0;
}
static int pakfire_linter_lint_fhs(
- struct pakfire_linter* linter, struct pakfire_file* file) {
+ struct pakfire_linter* linter, pakfire_file* file) {
int r;
// Checking against FHS
static int pakfire_linter_file(pakfire_archive* archive,
struct archive* a, struct archive_entry* e, void* data) {
struct pakfire_linter* linter = data;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// Fetch a file object
}
static int pakfire_linter_dump_results(
- struct pakfire_linter* linter, struct pakfire_file* file, const char* prefix) {
+ struct pakfire_linter* linter, pakfire_file* file, const char* prefix) {
struct pakfire_linter_result* result = NULL;
TAILQ_FOREACH(result, &linter->results, nodes) {
}
static int __pakfire_linter_dump_file(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_linter* linter = data;
// Show information about the file
typedef int (*pakfire_linter_result_callback)(pakfire_ctx* ctx,
pakfire_archive* archive, struct pakfire_package* package,
- struct pakfire_file* file, int priority, const char* message, void* data);
+ pakfire_file* file, int priority, const char* message, void* data);
struct pakfire_linter;
int pakfire_linter_lint(struct pakfire_linter* linter);
-int pakfire_linter_result(struct pakfire_linter* linter, struct pakfire_file* file,
+int pakfire_linter_result(struct pakfire_linter* linter, pakfire_file* file,
int priority, const char* format, ...) __attribute__((format(printf, 4, 5)));
#define pakfire_linter_info(linter, format, ...) \
const char* prefix = _("Filelist");
for (unsigned int i = 0; i < pakfire_filelist_length(filelist); i++) {
- struct pakfire_file* file = pakfire_filelist_get(filelist, i);
+ pakfire_file* file = pakfire_filelist_get(filelist, i);
const char* path = pakfire_file_get_path(file);
pakfire_package_dump_add_line(&string, prefix, path);
Repokey* key, struct s_KeyValue* kv) {
struct pakfire_package_filelist_search* search = (struct pakfire_package_filelist_search*)data;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// Skip any results of the wrong type
}
static int __pakfire_package_set_filelist(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_package* pkg = data;
// Fetch the path
}
static int __pakfire_package_add_json_filelist(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct json_object* filelist = data;
int r;
return r;
}
-int pakfire_packager_add_file(struct pakfire_packager* packager, struct pakfire_file* file) {
+int pakfire_packager_add_file(struct pakfire_packager* packager, pakfire_file* file) {
int r;
// Check input
int pakfire_packager_add(struct pakfire_packager* packager,
const char* sourcepath, const char* path) {
struct archive_entry* entry = NULL;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// Check inputs
}
static int __pakfire_packager_add_files(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_packager* packager = data;
return pakfire_packager_add_file(packager, file);
int pakfire_packager_finish(struct pakfire_packager* packager, FILE* f);
int pakfire_packager_add_file(
- struct pakfire_packager* packager, struct pakfire_file* file);
+ struct pakfire_packager* packager, pakfire_file* file);
int pakfire_packager_add_files(struct pakfire_packager* packager,
pakfire_filelist* filelist);
int pakfire_packager_add(struct pakfire_packager* packager,
}
static int pakfire_stripper_find_elf(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_stripper* self = data;
int r;
static int pakfire_stripper_collect_sources(
pakfire_ctx* ctx, pakfire_elf* elf, const char* filename, void* data) {
struct pakfire_stripper* self = data;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
int r;
// If the source file is not in the right path, we ignore it
}
static int pakfire_stripper_copy_sources(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_stripper* self = data;
struct stat st = {};
char p[PATH_MAX];
__pakfire_stripper_debug_path(stripper, s, sizeof(s), filename, build_id)
static int __pakfire_stripper_debug_path(struct pakfire_stripper* self,
- char* buffer, size_t length, struct pakfire_file* file, const char* build_id) {
+ char* buffer, size_t length, pakfire_file* file, const char* build_id) {
char debugpath[PATH_MAX];
int r;
}
static int pakfire_stripper_extract_debuginfo(struct pakfire_stripper* self,
- struct pakfire_file* file, pakfire_elf* elf, const char* build_id_path) {
+ pakfire_file* file, pakfire_elf* elf, const char* build_id_path) {
int r;
const char* path = pakfire_file_get_abspath(file);
}
static int pakfire_stripper_strip_debuginfo(struct pakfire_stripper* self,
- struct pakfire_file* file, pakfire_elf* elf) {
+ pakfire_file* file, pakfire_elf* elf) {
char debugpath[PATH_MAX];
char tmppath[PATH_MAX] = "";
char** argv = NULL;
}
static int pakfire_stripper_strip(
- pakfire_ctx* ctx, struct pakfire_file* file, void* data) {
+ pakfire_ctx* ctx, pakfire_file* file, void* data) {
struct pakfire_stripper* self = data;
pakfire_elf* elf = NULL;
int r;
#include "pakfire.h"
#include "util.h"
-PyObject* new_file(PyTypeObject* type, struct pakfire_file* file) {
+PyObject* new_file(PyTypeObject* type, pakfire_file* file) {
FileObject* self = (FileObject *)type->tp_alloc(type, 0);
if (self) {
self->file = pakfire_file_ref(file);
typedef struct {
PyObject_HEAD
- struct pakfire_file* file;
+ pakfire_file* file;
} FileObject;
extern PyTypeObject FileType;
-PyObject* new_file(PyTypeObject* type, struct pakfire_file* file);
+PyObject* new_file(PyTypeObject* type, pakfire_file* file);
#endif /* PYTHON_PAKFIRE_FILE_H */
pakfire_filelist* filelist = pakfire_package_get_filelist(self->package);
for (unsigned int i = 0; i < pakfire_filelist_length(filelist); i++) {
- struct pakfire_file* file = pakfire_filelist_get(filelist, i);
+ pakfire_file* file = pakfire_filelist_get(filelist, i);
const char* path = pakfire_file_get_path(file);
pakfire_file_unref(file);
}
PyObject* PyList_FromFileList(pakfire_filelist* filelist) {
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
PyObject* f = NULL;
int r;
#include "../testsuite.h"
static int test_create(const struct test* t) {
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
// Create a new file
ASSERT_SUCCESS(pakfire_file_create(&file, t->pakfire, NULL));
}
static int test_create_invalid(const struct test* t) {
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
// Create a new file
ASSERT_SUCCESS(pakfire_file_create(&file, t->pakfire, NULL));
static int test_create_filelist(const struct test* t) {
pakfire_filelist* list = NULL;
- struct pakfire_file* file1 = NULL;
- struct pakfire_file* file2 = NULL;
- struct pakfire_file* file3 = NULL;
+ pakfire_file* file1 = NULL;
+ pakfire_file* file2 = NULL;
+ pakfire_file* file3 = NULL;
int r = EXIT_FAILURE;
// Create a new filelist
static int test_filelist(const struct test* t) {
pakfire_filelist* filelist = NULL;
- struct pakfire_file* file = NULL;
+ pakfire_file* file = NULL;
struct pakfire_package* pkg = NULL;
int r = EXIT_FAILURE;