Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Add configuration support for setting the fetch timeout
Dan McGregor committed 13 years ago
commit d34be201c27c12ae41fa1fed12c2dce90f1b119f
parent a855c8f
3 files changed +12 -2
modified libpkg/fetch.c
@@ -119,6 +119,7 @@ pkg_fetch_file_to_fd(const char *url, int dest, time_t t)
	off_t r;

	int64_t max_retry, retry;
+
	int64_t fetch_timeout;
	time_t begin_dl;
	time_t now;
	time_t last = 0;
@@ -133,11 +134,14 @@ pkg_fetch_file_to_fd(const char *url, int dest, time_t t)
	struct http_mirror *http_current = NULL;
	const char *mt;

-
	fetchTimeout = 30;
-

	if (pkg_config_int64(PKG_CONFIG_FETCH_RETRY, &max_retry) == EPKG_FATAL)
		max_retry = 3;

+
	if (pkg_config_int64(PKG_CONFIG_FETCH_TIMEOUT, &fetch_timeout) == EPKG_FATAL)
+
		fetch_timeout = 30;
+

+
	fetchTimeout = (int) fetch_timeout;
+

	retry = max_retry;

	u = fetchParseURL(url);
modified libpkg/pkg.h.in
@@ -329,6 +329,7 @@ typedef enum _pkg_config_key {
	PKG_CONFIG_REPO_AUTOUPDATE,
	PKG_CONFIG_HTTP_PROXY,
	PKG_CONFIG_FTP_PROXY,
+
	PKG_CONFIG_FETCH_TIMEOUT,
	PKG_CONFIG_NAMESERVER,
	PKG_CONFIG_EVENT_PIPE,
} pkg_config_key;
modified libpkg/pkg_config.c
@@ -216,6 +216,11 @@ static struct config_entry c[] = {
		"FTP_PROXY",
		NULL,
	},
+
	[PKG_CONFIG_FETCH_TIMEOUT] = {
+
		PKG_CONFIG_INTEGER,
+
		"FETCH_TIMEOUT",
+
		"30",
+
	},
	[PKG_CONFIG_NAMESERVER] = {
		PKG_CONFIG_STRING,
		"NAMESERVER",