aboutsummaryrefslogtreecommitdiff
path: root/src/networkfilemanager.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-02-23 19:45:20 +0100
committerEven Rouault <even.rouault@spatialys.com>2020-02-24 10:32:24 +0100
commit25f8c03774bd639af9e07f616211caada9d307f0 (patch)
tree84d8bf3644da6398cd0abeed0a5435f9863d727c /src/networkfilemanager.cpp
parent57595327b253f23ba4330fb1cda3d7bb66bbc81d (diff)
downloadPROJ-25f8c03774bd639af9e07f616211caada9d307f0.tar.gz
PROJ-25f8c03774bd639af9e07f616211caada9d307f0.zip
Expose proj_context_is_network_enabled() in C API
Diffstat (limited to 'src/networkfilemanager.cpp')
-rw-r--r--src/networkfilemanager.cpp48
1 files changed, 28 insertions, 20 deletions
diff --git a/src/networkfilemanager.cpp b/src/networkfilemanager.cpp
index d252fd84..28d8baa2 100644
--- a/src/networkfilemanager.cpp
+++ b/src/networkfilemanager.cpp
@@ -2023,6 +2023,32 @@ int proj_context_set_enable_network(PJ_CONTEXT *ctx, int enable) {
#endif
}
+// ---------------------------------------------------------------------------
+
+/** Return if network access is enabled.
+*
+* @param ctx PROJ context, or NULL
+* @return TRUE if network access has been enabled
+* @since 7.0
+*/
+int proj_context_is_network_enabled(PJ_CONTEXT *ctx) {
+ if (ctx == nullptr) {
+ ctx = pj_get_default_ctx();
+ }
+ if (ctx->networking.enabled_env_variable_checked) {
+ return ctx->networking.enabled;
+ }
+ const char *enabled = getenv("PROJ_NETWORK");
+ if (enabled && enabled[0] != '\0') {
+ ctx->networking.enabled = ci_equal(enabled, "ON") ||
+ ci_equal(enabled, "YES") ||
+ ci_equal(enabled, "TRUE");
+ }
+ pj_load_ini(ctx);
+ ctx->networking.enabled_env_variable_checked = true;
+ return ctx->networking.enabled;
+}
+
//! @endcond
// ---------------------------------------------------------------------------
@@ -2177,7 +2203,7 @@ int proj_is_download_needed(PJ_CONTEXT *ctx, const char *url_or_filename,
if (ctx == nullptr) {
ctx = pj_get_default_ctx();
}
- if (!pj_context_is_network_enabled(ctx)) {
+ if (!proj_context_is_network_enabled(ctx)) {
pj_log(ctx, PJ_LOG_ERROR, "Networking capabilities are not enabled");
return false;
}
@@ -2313,7 +2339,7 @@ int proj_download_file(PJ_CONTEXT *ctx, const char *url_or_filename,
if (ctx == nullptr) {
ctx = pj_get_default_ctx();
}
- if (!pj_context_is_network_enabled(ctx)) {
+ if (!proj_context_is_network_enabled(ctx)) {
pj_log(ctx, PJ_LOG_ERROR, "Networking capabilities are not enabled");
return false;
}
@@ -2503,24 +2529,6 @@ int proj_download_file(PJ_CONTEXT *ctx, const char *url_or_filename,
//! @cond Doxygen_Suppress
-bool pj_context_is_network_enabled(PJ_CONTEXT *ctx) {
- if (ctx == nullptr) {
- ctx = pj_get_default_ctx();
- }
- if (ctx->networking.enabled_env_variable_checked) {
- return ctx->networking.enabled;
- }
- const char *enabled = getenv("PROJ_NETWORK");
- if (enabled && enabled[0] != '\0') {
- ctx->networking.enabled = ci_equal(enabled, "ON") ||
- ci_equal(enabled, "YES") ||
- ci_equal(enabled, "TRUE");
- }
- pj_load_ini(ctx);
- ctx->networking.enabled_env_variable_checked = true;
- return ctx->networking.enabled;
-}
-
// ---------------------------------------------------------------------------
std::string pj_context_get_grid_cache_filename(PJ_CONTEXT *ctx) {