83 "temp fd:%d", file->
fd);
128 for (n = 0; n < 3; n++) {
129 level = path->
level[n];
152 for (i = 0; i < 3; i++) {
153 if (path->
level[i] == 0) {
157 pos += path->
level[
i] + 1;
162 "temp file: \"%s\"", file->
name.
data);
251 return "is duplicate";
261 path->
name = value[1];
277 for (i = 0, n = 2; n < cf->
args->
nelts; i++, n++) {
278 level =
ngx_atoi(value[n].data, value[n].len);
280 return "invalid value";
284 path->
len += level + 1;
288 path->
level[i++] = 0;
319 (*path)->name = init->
name;
325 (*path)->level[0] = init->
level[0];
326 (*path)->level[1] = init->
level[1];
327 (*path)->level[2] = init->
level[2];
329 (*path)->len = init->
level[0] + (init->
level[0] ? 1 : 0)
333 (*path)->manager = NULL;
334 (*path)->loader = NULL;
335 (*path)->conf_file = NULL;
357 return "is duplicate";
368 if (
ngx_strncmp(p,
"user:",
sizeof(
"user:") - 1) == 0) {
370 p +=
sizeof(
"user:") - 1;
372 }
else if (
ngx_strncmp(p,
"group:",
sizeof(
"group:") - 1) == 0) {
374 p +=
sizeof(
"group:") - 1;
376 }
else if (
ngx_strncmp(p,
"all:",
sizeof(
"all:") - 1) == 0) {
378 p +=
sizeof(
"all:") - 1;
394 *access |= right << shift;
420 for (n = 0; n < 3; n++) {
421 if (p[i]->level[n] != path->
level[n]) {
423 if (p[i]->conf_file == NULL) {
425 "the default path name \"%V\" has "
426 "the same name as another default path, "
427 "but the different levels, you need to "
428 "redefine one of them in http section",
434 "the path name \"%V\" in %s:%ui has "
435 "the same name as default path, but "
436 "the different levels, you need to "
437 "define default path in http section",
443 "the same path name \"%V\" in %s:%ui "
444 "has the different levels than",
445 &p[i]->name, p[i]->conf_file, p[i]->line);
449 if (p[i]->level[n] == 0) {
507 if (fi.st_uid != user) {
508 if (chown((
const char *) path[i]->name.
data, user, -1) == -1) {
510 "chown(\"%s\", %d) failed",
521 if (chmod((
const char *) path[i]->name.
data, fi.st_mode) == -1) {
523 "chmod() \"%s\" failed", path[i]->
name.
data);
555 if (ext->
time != -1) {
595 err = ngx_win32_rename_file(src, to, ext->
log);
693 if (cf->
size != -1) {
709 if ((off_t) len > size) {
729 if ((off_t) len > size) {
741 if ((
size_t) n != len) {
748 n = ngx_write_fd(nfd, buf, len);
756 if ((
size_t) n != len) {
766 if (cf->
time != -1) {
832 "walk tree \"%V\"", tree);
881 "tree name %uz:\"%s\"", len, name);
883 if (len == 1 && name[0] ==
'.') {
887 if (len == 2 && name[0] ==
'.' && name[1] ==
'.') {
891 file.
len = tree->
len + 1 + len;
902 if (buf.
data == NULL) {
914 "tree path \"%s\"", file.
data);
927 "tree file \"%s\"", file.
data);
941 "tree enter dir \"%s\"", file.
data);
964 "tree special \"%s\"", file.
data);