source:
asp3_tinet_ecnl_arm/trunk/musl-1.1.18/src/temp/mkdtemp.c
Last change on this file was 352, checked in by , 6 years ago | |
---|---|
|
|
File size: 447 bytes |
Line | |
---|---|
1 | #include <string.h> |
2 | #include <stdlib.h> |
3 | #include <errno.h> |
4 | #include <sys/stat.h> |
5 | |
6 | char *__randname(char *); |
7 | |
8 | char *mkdtemp(char *template) |
9 | { |
10 | size_t l = strlen(template); |
11 | int retries = 100; |
12 | |
13 | if (l<6 || memcmp(template+l-6, "XXXXXX", 6)) { |
14 | errno = EINVAL; |
15 | return 0; |
16 | } |
17 | |
18 | do { |
19 | __randname(template+l-6); |
20 | if (!mkdir(template, 0700)) return template; |
21 | } while (--retries && errno == EEXIST); |
22 | |
23 | memcpy(template+l-6, "XXXXXX", 6); |
24 | return 0; |
25 | } |
Note:
See TracBrowser
for help on using the repository browser.