diff --git a/asterisk/IMS_ConnectionHandler.ttcn b/asterisk/IMS_ConnectionHandler.ttcn
index 69e8abf..ba2a2fd 100644
--- a/asterisk/IMS_ConnectionHandler.ttcn
+++ b/asterisk/IMS_ConnectionHandler.ttcn
@@ -94,6 +94,7 @@
 	SipAddr registrar_sip_record,
 	CallidString registrar_sip_call_id,
 	integer registrar_sip_seq_nr,
+	integer registrar_expires,
 	SipUrl local_sip_url_ext,
 	SipAddr local_sip_record,
 	Contact registered_contact optional,
@@ -214,6 +215,7 @@
 					   f_sip_str_quote(display_name)),
 	registrar_sip_call_id := hex2str(f_rnd_hexstring(15)) & "@" & domain,
 	registrar_sip_seq_nr := f_sip_rand_seq_nr(),
+	registrar_expires := c_def_expires,
 	local_sip_url_ext := ts_SipUrl(ts_HostPort(domain, local_sip_port),
 				       ts_UserInfo(imsi)),
 	local_sip_record := ts_SipAddr(ts_HostPort(domain),
@@ -922,6 +924,7 @@
 	[] SIP.receive(exp_req) -> value g_rx_sip_req {
 		var template (value) PDU_SIP_Response tx_resp;
 		var Via via;
+		var Contact contact;
 		var CallidString sip_call_id;
 		var template (value) From from_addr;
 		var template (value) To to_addr;
@@ -970,9 +973,16 @@
 									  scheme := "tel"))),
 				ts_P_Assoc_uri_spec(g_rx_sip_req.msgHeader.toField.addressField.nameAddr)
 			}));
-		f_ims_validate_register_contact(g_rx_sip_req.msgHeader.contact);
-		f_ims_parse_register_contact(g_rx_sip_req.msgHeader.contact);
-		g_pars.subscr.registered_contact := g_rx_sip_req.msgHeader.contact;
+
+		contact := g_rx_sip_req.msgHeader.contact;
+		f_ims_validate_register_contact(contact);
+		f_ims_parse_register_contact(contact);
+		g_pars.subscr.registered_contact := contact;
+		/* Set expires= to configured value: RFC3261 10.3 8) */
+		for (var integer i := 0; i < lengthof(contact.contactBody.contactAddresses); i := i + 1) {
+			contact.contactBody.contactAddresses[i].contactParams :=
+				valueof({ ts_Param("expires", int2str(g_pars.subscr.registrar_expires)) });
+		}
 
 		/* Tx 200 OK */
 		to_addr.toParams := f_sip_param_set(to_addr.toParams, "tag", f_sip_rand_tag());
@@ -983,6 +993,7 @@
 			sip_seq_nr,
 			"OK",
 			via,
+			contact := contact,
 			p_associated_uri := g_pars.subscr.p_associated_uri,
 			require := require,
 			server := g_pars.server_name,
