+/*
+ * Write to writable pipe used to notify a thread.
+ */
+int notify_thread_pipe(int wpipe)
+{
+ int ret;
+
+ ret = write(wpipe, "!", 1);
+ if (ret < 0) {
+ PERROR("write poll pipe");
+ }
+
+ return ret;
+}
+
+/*
+ * Return pointer to home directory path using the env variable HOME.
+ *
+ * No home, NULL is returned.
+ */
+const char *get_home_dir(void)
+{
+ return ((const char *) getenv("HOME"));
+}
+
+/*
+ * Create recursively directory using the FULL path.
+ */
+int mkdir_recursive(const char *path, mode_t mode, uid_t uid, gid_t gid)