dav/finfo.c

changeset 539
8deb52292c99
parent 527
d0e37224eba1
child 607
5dc7fe41e8f8
equal deleted inserted replaced
538:a7402e35ad87 539:8deb52292c99
47 47
48 if(!sstrcmp(s, SC("*")) || !sstrcmp(s, SC("a")) || !sstrcmp(s, SC("all"))) { 48 if(!sstrcmp(s, SC("*")) || !sstrcmp(s, SC("a")) || !sstrcmp(s, SC("all"))) {
49 return FINFO_DATE|FINFO_OWNER|FINFO_MODE; 49 return FINFO_DATE|FINFO_OWNER|FINFO_MODE;
50 } 50 }
51 51
52 size_t count = 0; 52 ssize_t count = 0;
53 sstr_t *fs = sstrsplit(s, SC(","), &count); 53 sstr_t *fs = sstrsplit(s, SC(","), &count);
54 54
55 char *err = NULL; 55 char *err = NULL;
56 56
57 uint32_t finfo = 0; 57 uint32_t finfo = 0;
95 } 95 }
96 96
97 DavXmlNode *content = NULL; 97 DavXmlNode *content = NULL;
98 DavXmlNode *last = NULL; 98 DavXmlNode *last = NULL;
99 99
100 if(finfo & FINFO_DATE == FINFO_DATE) { 100 if((finfo & FINFO_DATE) == FINFO_DATE) {
101 char str[32]; 101 char str[32];
102 struct tm *date = gmtime(&s->st_mtime); 102 struct tm *date = gmtime(&s->st_mtime);
103 strftime(str, 32, "%a, %d %b %Y %H:%M:%S GMT", date); 103 strftime(str, 32, "%a, %d %b %Y %H:%M:%S GMT", date);
104 DavXmlNode *mtime = dav_xml_createnode_with_text(DAV_NS, "mtime", str); 104 DavXmlNode *mtime = dav_xml_createnode_with_text(DAV_NS, "mtime", str);
105 content = mtime; 105 content = mtime;
106 last = mtime; 106 last = mtime;
107 } 107 }
108 #ifndef _WIN32 108 #ifndef _WIN32
109 if(finfo & FINFO_OWNER == FINFO_OWNER) { 109 if((finfo & FINFO_OWNER) == FINFO_OWNER) {
110 // TODO 110 // TODO
111 } 111 }
112 if(finfo & FINFO_MODE == FINFO_MODE) { 112 if((finfo & FINFO_MODE) == FINFO_MODE) {
113 mode_t mode = s->st_mode & 07777; 113 mode_t mode = s->st_mode & 07777;
114 char str[32]; 114 char str[32];
115 snprintf(str, 32, "%o", (int)mode); 115 snprintf(str, 32, "%o", (int)mode);
116 DavXmlNode *xmode = dav_xml_createnode_with_text(DAV_NS, "mode", str); 116 DavXmlNode *xmode = dav_xml_createnode_with_text(DAV_NS, "mode", str);
117 if(last) { 117 if(last) {

mercurial