+/* Runtime Toolkit API */
+
+/****f* silcutil/silc_runtime_init
+ *
+ * SYNOPSIS
+ *
+ * static inline void silc_runtime_init(void)
+ *
+ * DESCRIPTION
+ *
+ * Initializes the Runtime Toolkit. Application should call this as the
+ * very first call to the Runtime Toolkit. The function initializes some
+ * of the Toolkit features.
+ *
+ ***/
+static inline
+void silc_runtime_init(void)
+{
+ /* For now we don't have much here. Strictly speaking, calling this
+ currently isn't required. But in the future we may have something that
+ really must be initialized at the very start. Even the Tls doesn't
+ actually require initialization since any routine using Tls currently
+ takes care of that. */
+
+ /* Initialize Tls for this thread (probably main process thread). */
+ silc_thread_tls_init();
+}
+
+/****f* silcutil/silc_runtime_uninit
+ *
+ * SYNOPSIS
+ *
+ * static inline void silc_runtime_uninit(void)
+ *
+ * DESCRIPTION
+ *
+ * Uninitializes the Runtime Toolkit. Application should call this as the
+ * very last call to the Runtime Toolkit. The function uninitializes and
+ * frees all allocated resources.
+ *
+ ***/
+static inline
+void silc_runtime_uninit(void)
+{
+ /* Uninitialize the whole Tls system (not just one thread). */
+ silc_thread_tls_uninit();
+}
+