* @param to timeout in seconds
*/
static void
-server_mhd_connection_timeout (struct HTTP_Server_Plugin *plugin,
+server_mhd_connection_timeout (struct HTTP_Server_Plugin *plugin,
struct Session *s,
unsigned int to)
{
static int
server_parse_url (struct HTTP_Server_Plugin *plugin,
const char *url,
- struct GNUNET_PeerIdentity *target,
+ struct GNUNET_PeerIdentity *target,
uint32_t *tag)
{
char * tag_start = NULL;
if (DEBUG_URL_PARSE) GNUNET_break (0);
return GNUNET_SYSERR;
}
- if (GNUNET_OK !=
- GNUNET_CRYPTO_ecc_public_sign_key_from_string (target_start,
+ if (GNUNET_OK !=
+ GNUNET_CRYPTO_eddsa_public_key_from_string (target_start,
hash_length,
&target->public_key))
{
if (DEBUG_URL_PARSE) GNUNET_break (0);
return GNUNET_SYSERR;
}
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG,
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG,
plugin->name,
- "Found target `%s' in URL\n",
+ "Found target `%s' in URL\n",
GNUNET_i2s_full (target));
return GNUNET_OK;
}
plugin->env->session_start (NULL, &s->target, PLUGIN_NAME, NULL, 0 ,s, NULL, 0);
}
-#if MHD_VERSION >= 0x00090E00
if ((NULL == s->server_recv) || (NULL == s->server_send))
{
to = (HTTP_SERVER_NOT_VALIDATED_TIMEOUT.rel_value_us / 1000LL / 1000LL);
- MHD_set_connection_option (mhd_connection,
+ MHD_set_connection_option (mhd_connection,
MHD_CONNECTION_OPTION_TIMEOUT, to);
server_reschedule (plugin, sc->mhd_daemon, GNUNET_NO);
}
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
"Session %p for peer `%s' fully connected\n",
s, GNUNET_i2s (&target));
- to = (SERVER_SESSION_TIMEOUT.rel_value_us / 1000LL / 1000LL);
+ to = (HTTP_SERVER_SESSION_TIMEOUT.rel_value_us / 1000LL / 1000LL);
server_mhd_connection_timeout (plugin, s, to);
}
GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
"Setting timeout for %p to %u sec.\n", sc, to);
-#endif
return sc;
}
* Load ssl certificate
*
* @param plugin the plugin
- * @return GNUNET_OK on success, GNUNET_SYSERR on failure
+ * @return #GNUNET_OK on success, #GNUNET_SYSERR on failure
*/
static int
server_load_certificate (struct HTTP_Server_Plugin *plugin)
{
int res = GNUNET_OK;
-
- char *sh;
char *key_file;
char *cert_file;
- /* Get crypto init string from config
- * If not present just use default values */
-
- if (GNUNET_OK !=
- GNUNET_CONFIGURATION_get_value_string (plugin->env->cfg,
- "PATHS",
- "SERVICEHOME",
- &sh))
- {
- GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- "Failed to get servicehome!\n");
- return GNUNET_SYSERR;
- }
-
-
- if (GNUNET_OK ==
- GNUNET_CONFIGURATION_get_value_string (plugin->env->cfg,
- plugin->name,
- "CRYPTO_INIT",
- &plugin->crypto_init))
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
- "Using crypto init string `%s'\n",
- plugin->crypto_init);
- else
- GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
- "Using default crypto init string \n");
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_filename (plugin->env->cfg, plugin->name,
"KEY_FILE", &key_file))
{
- GNUNET_break (0);
- GNUNET_asprintf (&key_file, "%s/%s", sh, "https_key.key");
+ GNUNET_log_config_missing (GNUNET_ERROR_TYPE_ERROR,
+ plugin->name, "CERT_FILE");
+ return GNUNET_SYSERR;
}
-
-
if (GNUNET_OK !=
GNUNET_CONFIGURATION_get_value_filename (plugin->env->cfg, plugin->name,
"CERT_FILE", &cert_file))
{
- GNUNET_break (0);
- GNUNET_asprintf (&cert_file, "%s/%s", sh, "https_cert.crt");
+ GNUNET_log_config_missing (GNUNET_ERROR_TYPE_ERROR,
+ plugin->name, "CERT_FILE");
+ GNUNET_free (key_file);
+ return GNUNET_SYSERR;
}
- GNUNET_free (sh);
+ /* Get crypto init string from config. If not present, use
+ * default values */
+ if (GNUNET_OK ==
+ GNUNET_CONFIGURATION_get_value_string (plugin->env->cfg,
+ plugin->name,
+ "CRYPTO_INIT",
+ &plugin->crypto_init))
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
+ "Using crypto init string `%s'\n",
+ plugin->crypto_init);
+ else
+ GNUNET_log_from (GNUNET_ERROR_TYPE_DEBUG, plugin->name,
+ "Using default crypto init string \n");
+
/* read key & certificates from file */
GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
"Trying to loading TLS certificate from key-file `%s' cert-file`%s'\n",
if ((plugin->key == NULL) || (plugin->cert == NULL))
{
- GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR, plugin->name,
- _
- ("No usable TLS certificate found and creating one failed!\n"),
- "transport-https");
+ GNUNET_log_from (GNUNET_ERROR_TYPE_ERROR,
+ plugin->name,
+ _("No usable TLS certificate found and creating one at `%s/%s' failed!\n"),
+ key_file, cert_file);
GNUNET_free (key_file);
GNUNET_free (cert_file);
"MHD can set timeout per connection! Default time out %u sec.\n",
timeout);
#else
- timeout = SERVER_SESSION_TIMEOUT.rel_value_us / 1000LL / 1000LL;
+ timeout = HTTP_SERVER_SESSION_TIMEOUT.rel_value_us / 1000LL / 1000LL;
GNUNET_log_from (GNUNET_ERROR_TYPE_WARNING, plugin->name,
"MHD cannot set timeout per connection! Default time out %u sec.\n",
timeout);
s->timeout_task = GNUNET_SCHEDULER_NO_TASK;
GNUNET_log (TIMEOUT_LOG,
"Session %p was idle for %s, disconnecting\n",
- s,
- GNUNET_STRINGS_relative_time_to_string (SERVER_SESSION_TIMEOUT,
+ s,
+ GNUNET_STRINGS_relative_time_to_string (HTTP_SERVER_SESSION_TIMEOUT,
GNUNET_YES));
/* call session destroy function */
{
GNUNET_assert (NULL != s);
GNUNET_assert (GNUNET_SCHEDULER_NO_TASK == s->timeout_task);
- s->timeout_task = GNUNET_SCHEDULER_add_delayed (SERVER_SESSION_TIMEOUT,
+ s->timeout_task = GNUNET_SCHEDULER_add_delayed (HTTP_SERVER_SESSION_TIMEOUT,
&server_session_timeout,
s);
GNUNET_log (TIMEOUT_LOG,
"Timeout for session %p set to %s\n",
s,
- GNUNET_STRINGS_relative_time_to_string (SERVER_SESSION_TIMEOUT,
+ GNUNET_STRINGS_relative_time_to_string (HTTP_SERVER_SESSION_TIMEOUT,
GNUNET_YES));
}
GNUNET_assert (GNUNET_SCHEDULER_NO_TASK != s->timeout_task);
GNUNET_SCHEDULER_cancel (s->timeout_task);
- s->timeout_task = GNUNET_SCHEDULER_add_delayed (SERVER_SESSION_TIMEOUT,
+ s->timeout_task = GNUNET_SCHEDULER_add_delayed (HTTP_SERVER_SESSION_TIMEOUT,
&server_session_timeout,
s);
GNUNET_log (TIMEOUT_LOG,
"Timeout rescheduled for session %p set to %s\n",
s,
- GNUNET_STRINGS_relative_time_to_string (SERVER_SESSION_TIMEOUT,
+ GNUNET_STRINGS_relative_time_to_string (HTTP_SERVER_SESSION_TIMEOUT,
GNUNET_YES));
}