- if (GNUNET_CONFIGURATION_have_value (p->cfg,"PATHS", "SERVICEHOME"))
- GNUNET_CONFIGURATION_get_value_string (p->cfg, "PATHS", "SERVICEHOME", &p->servicehome);
-
- if (is_https)
- {
- struct stat sbuf;
- if (p==&p1)
- {
- if (GNUNET_CONFIGURATION_have_value (p->cfg,
- "transport-https", "KEY_FILE"))
- GNUNET_CONFIGURATION_get_value_string (p->cfg, "transport-https", "KEY_FILE", &key_file_p1);
- if (key_file_p1==NULL)
- GNUNET_asprintf(&key_file_p1,"https.key");
- if (0 == stat (key_file_p1, &sbuf ))
- {
- if (0 == remove(key_file_p1))
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Successfully removed existing private key file `%s'\n",key_file_p1);
- else
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Failed to remove private key file `%s'\n",key_file_p1);
- }
- if (GNUNET_CONFIGURATION_have_value (p->cfg,"transport-https", "CERT_FILE"))
- GNUNET_CONFIGURATION_get_value_string (p->cfg, "transport-https", "CERT_FILE", &cert_file_p1);
- if (cert_file_p1==NULL)
- GNUNET_asprintf(&cert_file_p1,"https.cert");
- if (0 == stat (cert_file_p1, &sbuf ))
- {
- if (0 == remove(cert_file_p1))
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Successfully removed existing certificate file `%s'\n",
- cert_file_p1);
- else
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Failed to remove existing certificate file `%s'\n",
- cert_file_p1);
- }
- }
- else if (p==&p2)
- {
- if (GNUNET_CONFIGURATION_have_value (p->cfg,
- "transport-https", "KEY_FILE"))
- GNUNET_CONFIGURATION_get_value_string (p->cfg, "transport-https", "KEY_FILE", &key_file_p2);
- if (key_file_p2==NULL)
- GNUNET_asprintf(&key_file_p2,"https.key");
- if (0 == stat (key_file_p2, &sbuf ))
- {
- if (0 == remove(key_file_p2))
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Successfully removed existing private key file `%s'\n",
- key_file_p2);
- else
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Failed to remove private key file `%s'\n",
- key_file_p2);
- }
- if (GNUNET_CONFIGURATION_have_value (p->cfg,"transport-https", "CERT_FILE"))
- GNUNET_CONFIGURATION_get_value_string (p->cfg, "transport-https", "CERT_FILE", &cert_file_p2);
- if (cert_file_p2==NULL)
- GNUNET_asprintf(&cert_file_p2,"https.cert");
- if (0 == stat (cert_file_p2, &sbuf ))
- {
- if (0 == remove(cert_file_p2))
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Successfully removed existing certificate file `%s'\n",cert_file_p2);
- else
- GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
- "Failed to remove existing certificate file `%s'\n",cert_file_p2);
- }
- }
- }
-
- p->th = GNUNET_TRANSPORT_connect (p->cfg,
- NULL, p,
- ¬ify_receive,
- ¬ify_connect, ¬ify_disconnect);
- GNUNET_assert (p->th != NULL);