util: add os_file_create_unique()
[mesa.git] / src / util / os_file.h
index 2f97c19ed5597d4dfbf427377bdd2cfcb4de014c..d691302d12dd095e0dcf8aac2cf1385f1648511e 100644 (file)
@@ -8,10 +8,21 @@
 #ifndef _OS_FILE_H_
 #define _OS_FILE_H_
 
+#include <stdio.h>
+
 #ifdef  __cplusplus
 extern "C" {
 #endif
 
+/*
+ * Create a new file and opens it for writing-only.
+ * If the given filename already exists, nothing is done and NULL is returned.
+ * `errno` gets set to the failure reason; if that is not EEXIST, the caller
+ * might want to do something other than trying again.
+ */
+FILE *
+os_file_create_unique(const char *filename, int filemode);
+
 /*
  * Read a file.
  * Returns a char* that the caller must free(), or NULL and sets errno.