tbf: Reimplement rlcmac_diag() and make it available from C

We never use the std:string anyway, we always call .c_str() to log using
osmocom logging system.
Furthermore, we'll need to use it from C code soon (next commit).

Change-Id: I3ad66f9f3f4d55d11da3a3b8b38656ae2dd50603
diff --git a/src/tbf.h b/src/tbf.h
index 3313255..da683b6 100644
--- a/src/tbf.h
+++ b/src/tbf.h
@@ -173,6 +173,7 @@
 void tbf_set_polling(struct gprs_rlcmac_tbf *tbf, uint32_t new_poll_fn, uint8_t ts, enum pdch_ulc_tbf_poll_reason t);
 void tbf_poll_timeout(struct gprs_rlcmac_tbf *tbf, struct gprs_rlcmac_pdch *pdch, uint32_t poll_fn, enum pdch_ulc_tbf_poll_reason reason);
 void tbf_update_state_fsm_name(struct gprs_rlcmac_tbf *tbf);
+const char* tbf_rlcmac_diag(const struct gprs_rlcmac_tbf *tbf);
 #ifdef __cplusplus
 }
 #endif
@@ -207,8 +208,6 @@
 
 	uint8_t tsc() const;
 
-	std::string rlcmac_diag();
-
 	bool n_inc(enum tbf_counters n);
 	void n_reset(enum tbf_counters n);