static int pakfire_dist_get_mirrorlist(pakfire_ctx* ctx, struct pakfire* pakfire,
struct pakfire_parser* makefile, pakfire_mirrorlist** list) {
pakfire_mirrorlist* m = NULL;
- struct pakfire_mirror* mirror = NULL;
+ pakfire_mirror* mirror = NULL;
char* p = NULL;
int r;
} flags;
};
-static void pakfire_mirror_free(struct pakfire_mirror* mirror) {
+static void pakfire_mirror_free(pakfire_mirror* mirror) {
if (mirror->ctx)
pakfire_ctx_unref(mirror->ctx);
free(mirror);
}
-int pakfire_mirror_create(struct pakfire_mirror** mirror,
+int pakfire_mirror_create(pakfire_mirror** mirror,
pakfire_ctx* ctx, const char* url) {
- struct pakfire_mirror* m = NULL;
+ pakfire_mirror* m = NULL;
int r;
// Allocate the mirror
return r;
}
-struct pakfire_mirror* pakfire_mirror_ref(struct pakfire_mirror* mirror) {
+pakfire_mirror* pakfire_mirror_ref(pakfire_mirror* mirror) {
++mirror->nrefs;
return mirror;
}
-struct pakfire_mirror* pakfire_mirror_unref(struct pakfire_mirror* mirror) {
+pakfire_mirror* pakfire_mirror_unref(pakfire_mirror* mirror) {
if (--mirror->nrefs > 0)
return mirror;
return NULL;
}
-const char* pakfire_mirror_get_url(struct pakfire_mirror* mirror) {
+const char* pakfire_mirror_get_url(pakfire_mirror* mirror) {
return mirror->url;
}
// Enabled?
-int pakfire_mirror_is_enabled(struct pakfire_mirror* mirror) {
+int pakfire_mirror_is_enabled(pakfire_mirror* mirror) {
return (mirror->flags & PAKFIRE_MIRROR_ENABLED);
}
This function is called when a transfer has failed and will automatically
disable the mirror.
*/
-int pakfire_mirror_xfer_failed(struct pakfire_mirror* self, pakfire_xfer_error_code_t code) {
+int pakfire_mirror_xfer_failed(pakfire_mirror* self, pakfire_xfer_error_code_t code) {
switch (code) {
// We should never be called with this
case PAKFIRE_XFER_OK:
#ifndef PAKFIRE_MIRROR_H
#define PAKFIRE_MIRROR_H
-struct pakfire_mirror;
+typedef struct pakfire_mirror pakfire_mirror;
#include <pakfire/ctx.h>
#include <pakfire/xfer.h>
-int pakfire_mirror_create(struct pakfire_mirror** mirror,
+int pakfire_mirror_create(pakfire_mirror** mirror,
pakfire_ctx* ctx, const char* url);
-struct pakfire_mirror* pakfire_mirror_ref(struct pakfire_mirror* mirror);
-struct pakfire_mirror* pakfire_mirror_unref(struct pakfire_mirror* mirror);
+pakfire_mirror* pakfire_mirror_ref(pakfire_mirror* mirror);
+pakfire_mirror* pakfire_mirror_unref(pakfire_mirror* mirror);
-const char* pakfire_mirror_get_url(struct pakfire_mirror* mirror);
+const char* pakfire_mirror_get_url(pakfire_mirror* mirror);
// Enabled?
-int pakfire_mirror_is_enabled(struct pakfire_mirror* mirror);
+int pakfire_mirror_is_enabled(pakfire_mirror* mirror);
-int pakfire_mirror_xfer_failed(struct pakfire_mirror* self, pakfire_xfer_error_code_t code);
+int pakfire_mirror_xfer_failed(pakfire_mirror* self, pakfire_xfer_error_code_t code);
#endif /* PAKFIRE_MIRROR_H */
int nrefs;
// Mirrors
- struct pakfire_mirror** mirrors;
+ pakfire_mirror** mirrors;
unsigned int num_mirrors;
};
static int pakfire_mirrorlist_add_mirror_from_url(
pakfire_mirrorlist* list, const char* url) {
- struct pakfire_mirror* mirror = NULL;
+ pakfire_mirror* mirror = NULL;
int r;
// Create a new mirror object
return r;
}
-int pakfire_mirrorlist_add_mirror(pakfire_mirrorlist* list, struct pakfire_mirror* mirror) {
+int pakfire_mirrorlist_add_mirror(pakfire_mirrorlist* list, pakfire_mirror* mirror) {
// Check input
if (!mirror)
return -EINVAL;
/*
Return the first mirror that isn't disabled
*/
-struct pakfire_mirror* pakfire_mirrorlist_get_first(pakfire_mirrorlist* list) {
+pakfire_mirror* pakfire_mirrorlist_get_first(pakfire_mirrorlist* list) {
for (unsigned int i = 0; i < list->num_mirrors; i++) {
if (!pakfire_mirror_is_enabled(list->mirrors[i]))
continue;
return NULL;
}
-struct pakfire_mirror* pakfire_mirrorlist_get_next(
- pakfire_mirrorlist* list, struct pakfire_mirror* mirror) {
+pakfire_mirror* pakfire_mirrorlist_get_next(
+ pakfire_mirrorlist* list, pakfire_mirror* mirror) {
// Return NULL if we have reached the end of the list
if (!mirror)
return NULL;
int pakfire_mirrorlist_read(pakfire_mirrorlist* list, const char* path);
int pakfire_mirrorlist_add_mirror(
- pakfire_mirrorlist* list, struct pakfire_mirror* mirror);
+ pakfire_mirrorlist* list, pakfire_mirror* mirror);
int pakfire_mirrorlist_empty(pakfire_mirrorlist* ml);
-struct pakfire_mirror* pakfire_mirrorlist_get_first(pakfire_mirrorlist* list);
-struct pakfire_mirror* pakfire_mirrorlist_get_next(
- pakfire_mirrorlist* list, struct pakfire_mirror* mirror);
+pakfire_mirror* pakfire_mirrorlist_get_first(pakfire_mirrorlist* list);
+pakfire_mirror* pakfire_mirrorlist_get_next(
+ pakfire_mirrorlist* list, pakfire_mirror* mirror);
#endif /* PAKFIRE_MIRRORLIST_H */
// Mirrors
char baseurl[PATH_MAX];
pakfire_mirrorlist* mirrors;
- struct pakfire_mirror* mirror;
+ pakfire_mirror* mirror;
// Effective URL
const char* effective_url;
/*
Helper function to set a chosen mirror
*/
-static int pakfire_xfer_select_mirror(struct pakfire_xfer* self, struct pakfire_mirror* mirror) {
+static int pakfire_xfer_select_mirror(struct pakfire_xfer* self, pakfire_mirror* mirror) {
// Free the previous mirror
if (self->mirror) {
pakfire_mirror_unref(self->mirror);
}
int pakfire_xfer_set_mirrorlist(struct pakfire_xfer* xfer, pakfire_mirrorlist* mirrors) {
- struct pakfire_mirror* mirror = NULL;
+ pakfire_mirror* mirror = NULL;
int r;
// Drop all references to a former mirrorlist
Called after something went wrong and we want to try again with another mirror
*/
static int pakfire_xfer_next_mirror(struct pakfire_xfer* xfer) {
- struct pakfire_mirror* mirror = NULL;
+ pakfire_mirror* mirror = NULL;
int r = 0;
// If our mirror is broken, we select the next one