hnb-test: Send UE register request
diff --git a/src/tests/hnb-test.c b/src/tests/hnb-test.c
index 480b3ef..90b2f38 100644
--- a/src/tests/hnb-test.c
+++ b/src/tests/hnb-test.c
@@ -57,7 +57,38 @@
 
 int hnb_test_ue_register_tx(struct hnb_test *hnb_test)
 {
-	return 0;
+	struct msgb *msg;
+	int rc, imsi_len;
+
+	char imsi_buf[16];
+	char *imsi_str = "262019876543210";
+
+	UERegisterRequest_t request_out;
+	UERegisterRequestIEs_t request;
+	memset(&request, 0, sizeof(request));
+
+	request.uE_Identity.present = UE_Identity_PR_iMSI;
+
+	imsi_len = encode_iu_imsi(imsi_buf, sizeof(imsi_buf), imsi_str);
+	request.uE_Identity.choice.iMSI.buf = imsi_buf;
+	request.uE_Identity.choice.iMSI.size = imsi_len;
+
+	request.registration_Cause = Registration_Cause_normal;
+	request.uE_Capabilities.access_stratum_release_indicator = Access_stratum_release_indicator_rel_6;
+	request.uE_Capabilities.csg_capability = CSG_Capability_not_csg_capable;
+
+	memset(&request_out, 0, sizeof(request_out));
+	rc = hnbap_encode_ueregisterrequesties(&request_out, &request);
+
+	msg = hnbap_generate_initiating_message(ProcedureCode_id_UERegister,
+						Criticality_reject,
+						&asn_DEF_UERegisterRequest,
+						&request_out);
+
+
+	msgb_ppid(msg) = IUH_PPI_HNBAP;
+
+	return osmo_wqueue_enqueue(&hnb_test->wqueue, msg);
 }
 
 int hnb_test_rx_hnb_register_acc(struct hnb_test *hnb, ANY_t *in)