xref: /plan9-contrib/sys/src/ape/lib/ap/plan9/mkdir.c (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1 #include "lib.h"
2 #include <sys/stat.h>
3 #include <errno.h>
4 #include "sys9.h"
5 
6 /*
7  * BUG: errno mapping
8  */
9 int
mkdir(const char * name,mode_t mode)10 mkdir(const char *name, mode_t mode)
11 {
12 	int n;
13 	struct stat st;
14 
15 	if(stat(name, &st)==0) {
16 		errno = EEXIST;
17 		return -1;
18 	}
19 	n = _CREATE(name, 0, 0x80000000|(mode&0777));
20 	if(n < 0)
21 		_syserrno();
22 	else{
23 		_CLOSE(n);
24 		n = 0;
25 	}
26 	return n;
27 }
28