+#include "gnunet_transport_plugin.h"
+
+/**
+ * Timeout values for testing
+ */
+#define TESTING GNUNET_NO
+
+#if TESTING
+#define HTTP_SERVER_NOT_VALIDATED_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 3)
+#define HTTP_CLIENT_NOT_VALIDATED_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 3)
+#define HTTP_CLIENT_SESSION_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 7)
+#define SERVER_SESSION_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 7)
+#define TIMEOUT_LOG GNUNET_ERROR_TYPE_DEBUG
+
+#else
+
+#if BUILD_HTTPS
+#define PROTOCOL "https"
+#else
+#define PROTOCOL "http"
+#endif
+
+#define HTTP_SERVER_NOT_VALIDATED_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 15)
+#define HTTP_CLIENT_NOT_VALIDATED_TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 15)
+#define HTTP_CLIENT_SESSION_TIMEOUT GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT
+#define HTTP_SERVER_SESSION_TIMEOUT GNUNET_CONSTANTS_IDLE_CONNECTION_TIMEOUT
+#define TIMEOUT_LOG GNUNET_ERROR_TYPE_DEBUG
+
+#endif
+
+#define HTTP_DEFAULT_PORT 80
+#define HTTPS_DEFAULT_PORT 443
+
+/**
+ * Bits in the `options` field of HTTP addresses.
+ */
+enum HttpAddressOptions
+{
+ /**
+ * No bits set.
+ */
+ HTTP_OPTIONS_NONE = 0,
+
+ /**
+ * Verify X509 server certificate, it should be valid.
+ * (if this bit is not set, it is probably just self-
+ * signed and not expected to be verified).
+ */
+ HTTP_OPTIONS_VERIFY_CERTIFICATE = 1,
+
+ /**
+ * Enable TCP Stealth-style port knocking.
+ */
+ HTTP_OPTIONS_TCP_STEALTH = 2
+};
+