diff --git a/library/HTTP_Adapter.ttcn b/library/HTTP_Adapter.ttcn
index 9ad1e4a..c06aa38 100644
--- a/library/HTTP_Adapter.ttcn
+++ b/library/HTTP_Adapter.ttcn
@@ -19,14 +19,17 @@
 
 type component http_CT {
 	port HTTPmsg_PT HTTP;
-	var charstring g_http_host;
-	var integer g_http_port;
+	var HTTP_Adapter_Params g_pars;
 };
 
-function f_http_init(charstring host, integer http_port) runs on http_CT {
+type record HTTP_Adapter_Params {
+	charstring http_host,
+	integer http_port
+};
+
+function f_http_init(HTTP_Adapter_Params pars) runs on http_CT {
 	map(self:HTTP, system:HTTP);
-	g_http_host := host;
-	g_http_port := http_port;
+	g_pars := pars;
 }
 
 template (value) Connect ts_HTTP_Connect(template (value) charstring hostname,
@@ -125,9 +128,9 @@
 function f_http_tx_request(charstring url, charstring method := "GET", template charstring body := omit,
 			   HeaderLines custom_hdr := { })
 runs on http_CT {
-	HTTP.send(ts_HTTP_Connect(g_http_host, g_http_port));
+	HTTP.send(ts_HTTP_Connect(g_pars.http_host, g_pars.http_port));
 	HTTP.receive(Connect_result:?);
-	HTTP.send(ts_HTTP_Req(url, method, body, host := g_http_host & ":" & int2str(g_http_port), custom_hdr := custom_hdr));
+	HTTP.send(ts_HTTP_Req(url, method, body, host := g_pars.http_host & ":" & int2str(g_pars.http_port), custom_hdr := custom_hdr));
 }
 
 function f_http_rx_response(template HTTPMessage exp := tr_HTTP_Resp2xx, float tout := 2.0)
