- /* create a unique mountpoint */
- dir = malloc(strlen(TMP_DIR) + 2 + strlen(template));
- sprintf(dir, "%s/%s", TMP_DIR, template);
+ basename = strrchr(dev_path, '/');
+ if (basename)
+ basename++;
+ else
+ basename = dev_path;
+
+ /* create a unique mountpoint */
+ dir = malloc(strlen(TMP_DIR) + 13 + strlen(basename));
+ sprintf(dir, "%s/mnt-%s-XXXXXX", TMP_DIR, basename);