diff --git a/include/openbsc/db.h b/include/openbsc/db.h
index bd30aab..9ce7181 100644
--- a/include/openbsc/db.h
+++ b/include/openbsc/db.h
@@ -32,7 +32,7 @@
 
 /* subscriber management */
 struct gsm_subscriber* db_create_subscriber(char *imsi);
-struct gsm_subscriber* db_get_subscriber(enum gsm_subscriber_field field, char *subscr);
+struct gsm_subscriber* db_get_subscriber(enum gsm_subscriber_field field, const char *subscr);
 int db_sync_subscriber(struct gsm_subscriber* subscriber);
 int db_subscriber_alloc_tmsi(struct gsm_subscriber* subscriber);
 int db_subscriber_assoc_imei(struct gsm_subscriber* subscriber, char *imei);
diff --git a/include/openbsc/debug.h b/include/openbsc/debug.h
index d30f0d0..5671980 100644
--- a/include/openbsc/debug.h
+++ b/include/openbsc/debug.h
@@ -22,6 +22,7 @@
 
 #define static_assert(exp, name) typedef int dummy##name [(exp) ? 1 : -1];
 
+void hexdump(unsigned char *buf, int len);
 void debugp(unsigned int subsys, char *file, int line, const char *format, ...);
 void debug_parse_category_mask(const char* mask);
 void debug_use_color(int use_color);
diff --git a/include/openbsc/gsm_04_08.h b/include/openbsc/gsm_04_08.h
index 3ef4fdb..b5eecf0 100644
--- a/include/openbsc/gsm_04_08.h
+++ b/include/openbsc/gsm_04_08.h
@@ -394,6 +394,7 @@
 int gsm48_tx_mm_info(struct gsm_lchan *lchan);
 struct msgb *gsm48_msgb_alloc(void);
 int gsm48_sendmsg(struct msgb *msg);
+int generate_mid_from_tmsi(u_int8_t *buf, u_int32_t tmsi);
 
 
 #endif
diff --git a/include/openbsc/gsm_data.h b/include/openbsc/gsm_data.h
index 02fdeaf..5ab4c61 100644
--- a/include/openbsc/gsm_data.h
+++ b/include/openbsc/gsm_data.h
@@ -177,14 +177,6 @@
 	unsigned int num_bts;
 	/* private lists */
 	struct gsm_bts	bts[GSM_MAX_BTS+1];
-
-	/* management of the lower layers to allow the bsc to hook into it */
-	void (*update_request)(struct gsm_bts *, u_int32_t tmsi, int accepted);
-	void (*channel_allocated)(struct gsm_lchan *bts, enum gsm_chreq_reason_t);
-	void (*channel_deallocated)(struct gsm_lchan *bts);
-	void (*channel_response)(struct gsm_lchan *, int acked);
-	void (*channel_subscriber_assigned)(struct gsm_lchan *);
-	void (*call_state_changed)(struct gsm_lchan *, enum gsm_call_state new_state);
 };
 
 struct gsm_network *gsm_network_init(unsigned int num_bts, u_int16_t country_code,
diff --git a/include/openbsc/gsm_subscriber.h b/include/openbsc/gsm_subscriber.h
index 27726a8..8dcde3e 100644
--- a/include/openbsc/gsm_subscriber.h
+++ b/include/openbsc/gsm_subscriber.h
@@ -34,6 +34,7 @@
 struct gsm_subscriber *subscr_put(struct gsm_subscriber *subscr);
 struct gsm_subscriber *subscr_get_by_tmsi(const char *tmsi);
 struct gsm_subscriber *subscr_get_by_imsi(const char *imsi);
+int subscr_update(struct gsm_subscriber *s, struct gsm_bts *bts);
 
 /* internal */
 struct gsm_subscriber *subscr_alloc(void);
diff --git a/include/openbsc/misdn.h b/include/openbsc/misdn.h
index 09dc5ba..51932c2 100644
--- a/include/openbsc/misdn.h
+++ b/include/openbsc/misdn.h
@@ -23,5 +23,6 @@
 int mi_setup(struct gsm_bts *bts, int cardnr, 
 	     void (cb)(int event, struct gsm_bts *bts));
 void mi_set_pcap_fd(int fd);
+int _abis_nm_sendmsg(struct msgb *msg);
 
 #endif
