use taloc_zero() rather than talloc() and explisit memset()
diff --git a/openbsc/src/abis_nm.c b/openbsc/src/abis_nm.c
index 4a73930..b07aa31 100644
--- a/openbsc/src/abis_nm.c
+++ b/openbsc/src/abis_nm.c
@@ -2079,12 +2079,11 @@
 		if (rc < 2)
 			continue;
 
-		fle = talloc(tall_fle_ctx, struct file_list_entry);
+		fle = talloc_zero(tall_fle_ctx, struct file_list_entry);
 		if (!fle) {
 			rc = -ENOMEM;
 			goto out;
 		}
-		memset(fle, 0, sizeof(*fle));
 
 		/* construct new filename */
 		strncpy(dir, bs11_sw->swl_fname, sizeof(dir));
diff --git a/openbsc/src/e1_config.c b/openbsc/src/e1_config.c
index abc3040..9c9f40c 100644
--- a/openbsc/src/e1_config.c
+++ b/openbsc/src/e1_config.c
@@ -25,10 +25,9 @@
 	struct e1inp_ts *sign_ts;
 	struct e1inp_sign_link *oml_link, *rsl_link;
 
-	line = talloc(tall_bsc_ctx, struct e1inp_line);
+	line = talloc_zero(tall_bsc_ctx, struct e1inp_line);
 	if (!line)
 		return -ENOMEM;
-	memset(line, 0, sizeof(*line));
 
 	/* create E1 timeslots for signalling and TRAU frames */
 	e1inp_ts_config(&line->ts[1-1], line, E1INP_TS_TYPE_SIGN);
@@ -80,10 +79,9 @@
 	struct e1inp_ts *sign_ts, *rsl_ts;
 	struct e1inp_sign_link *oml_link, *rsl_link;
 
-	line = talloc(tall_bsc_ctx, struct e1inp_line);
+	line = talloc_zero(tall_bsc_ctx, struct e1inp_line);
 	if (!line)
 		return -ENOMEM;
-	memset(line, 0, sizeof(*line));
 
 	/* create E1 timeslots for signalling and TRAU frames */
 	e1inp_ts_config(&line->ts[1-1], line, E1INP_TS_TYPE_SIGN);
diff --git a/openbsc/src/e1_input.c b/openbsc/src/e1_input.c
index 9de6b01..56bce01 100644
--- a/openbsc/src/e1_input.c
+++ b/openbsc/src/e1_input.c
@@ -373,12 +373,10 @@
 		tall_sigl_ctx = talloc_named_const(tall_bsc_ctx, 1,
 						   "e1inp_sign_link");
 
-	link = talloc(tall_sigl_ctx, struct e1inp_sign_link);
+	link = talloc_zero(tall_sigl_ctx, struct e1inp_sign_link);
 	if (!link)
 		return NULL;
 
-	memset(link, 0, sizeof(*link));
-
 	link->ts = ts;
 	link->type = type;
 	INIT_LLIST_HEAD(&link->tx_list);
diff --git a/openbsc/src/gsm_04_08.c b/openbsc/src/gsm_04_08.c
index d6f131e..6d8530b 100644
--- a/openbsc/src/gsm_04_08.c
+++ b/openbsc/src/gsm_04_08.c
@@ -354,9 +354,8 @@
 	if (!tall_locop_ctx)
 		tall_locop_ctx = talloc_named_const(tall_bsc_ctx, 1,
 						    "loc_updating_oper");
-	lchan->loc_operation = talloc(tall_locop_ctx,
-				      struct gsm_loc_updating_operation);
-	memset(lchan->loc_operation, 0, sizeof(*lchan->loc_operation));
+	lchan->loc_operation = talloc_zero(tall_locop_ctx,
+					   struct gsm_loc_updating_operation);
 }
 
 static int gsm0408_authorize(struct gsm_lchan *lchan, struct msgb *msg)
diff --git a/openbsc/src/paging.c b/openbsc/src/paging.c
index 217da7e..0703e93 100644
--- a/openbsc/src/paging.c
+++ b/openbsc/src/paging.c
@@ -228,8 +228,7 @@
 	}
 
 	DEBUGP(DPAG, "Start paging on bts %d.\n", bts->nr);
-	req = talloc(tall_paging_ctx, struct gsm_paging_request);
-	memset(req, 0, sizeof(*req));
+	req = talloc_zero(tall_paging_ctx, struct gsm_paging_request);
 	req->subscr = subscr_get(subscr);
 	req->bts = bts;
 	req->chan_type = type;
diff --git a/openbsc/src/subchan_demux.c b/openbsc/src/subchan_demux.c
index 56f3dd3..ccd4fad 100644
--- a/openbsc/src/subchan_demux.c
+++ b/openbsc/src/subchan_demux.c
@@ -291,12 +291,11 @@
 {
 	struct mux_subch *sch = &mx->subch[s_nr];
 	int list_len = llist_len(&sch->tx_queue);
-	struct subch_txq_entry *tqe = talloc_size(tall_tqe_ctx,
-						  sizeof(*tqe) + len);
+	struct subch_txq_entry *tqe = talloc_zero_size(tall_tqe_ctx,
+							sizeof(*tqe) + len);
 	if (!tqe)
 		return -ENOMEM;
 
-	memset(tqe, 0, sizeof(*tqe));
 	tqe->bit_len = len;
 	memcpy(tqe->bits, data, len);
 
diff --git a/openbsc/src/telnet_interface.c b/openbsc/src/telnet_interface.c
index 5cc6ea0..7a67fe1 100644
--- a/openbsc/src/telnet_interface.c
+++ b/openbsc/src/telnet_interface.c
@@ -167,8 +167,7 @@
 	}
 
 
-	connection = talloc(tall_telnet_ctx, struct telnet_connection);
-	memset(connection, 0, sizeof(*connection));
+	connection = talloc_zero(tall_telnet_ctx, struct telnet_connection);
 	connection->network = (struct gsm_network*)fd->data;
 	connection->fd.data = connection;
 	connection->fd.fd = new_connection;