343 |
incr = 0; |
incr = 0; |
344 |
while(1) { |
while(1) { |
345 |
if(f != NULL) { |
if(f != NULL) { |
346 |
char buffer[128]; |
char buffer[512]; |
347 |
fread(buffer, size < 128 ? size : 128, 1, f); |
fread(buffer, size < 512 ? size : 512, 1, f); |
348 |
tw_write(ssl, sock, buffer, size < 128 ? size : 128); |
if(tw_write(ssl, sock, buffer, size < 512 ? size : 512) <= 0) return; |
349 |
} else { |
} else { |
350 |
tw_write(ssl, sock, (unsigned char*)doc + incr, size < 128 ? size : 128); |
if(tw_write(ssl, sock, (unsigned char*)doc + incr, size < 512 ? size : 512) <= 0) return; |
351 |
} |
} |
352 |
incr += 128; |
incr += 512; |
353 |
if(size <= 128) break; |
if(size <= 512) break; |
354 |
size -= 128; |
size -= 512; |
355 |
} |
} |
356 |
} |
} |
357 |
|
|
640 |
host[i] = 0; |
host[i] = 0; |
641 |
port = atoi(host + i + 1); |
port = atoi(host + i + 1); |
642 |
break; |
break; |
643 |
|
}else if(vhost[i] == '['){ |
644 |
|
for(; vhost[i] != 0 && vhost[i] != ']'; i++); |
645 |
} |
} |
646 |
} |
} |
647 |
name = host; |
name = host; |
793 |
addstring(&str, " <tr>\n"); |
addstring(&str, " <tr>\n"); |
794 |
addstring(&str, " <th></th>\n"); |
addstring(&str, " <th></th>\n"); |
795 |
addstring(&str, " <th>Filename</th>\n"); |
addstring(&str, " <th>Filename</th>\n"); |
796 |
|
addstring(&str, " <th>Last-modified</th>\n"); |
797 |
addstring(&str, " <th>MIME</th>\n"); |
addstring(&str, " <th>MIME</th>\n"); |
798 |
addstring(&str, " <th>Size</th>\n"); |
addstring(&str, " <th>Size</th>\n"); |
799 |
addstring(&str, " </tr>\n"); |
addstring(&str, " </tr>\n"); |
811 |
char* fpth = cm_strcat3(path, "/", items[i]); |
char* fpth = cm_strcat3(path, "/", items[i]); |
812 |
struct stat s; |
struct stat s; |
813 |
char size[512]; |
char size[512]; |
814 |
|
char date[512]; |
815 |
char* showmime; |
char* showmime; |
816 |
char* mime; |
char* mime; |
817 |
|
struct tm* tm; |
818 |
size[0] = 0; |
size[0] = 0; |
819 |
stat(fpth, &s); |
stat(fpth, &s); |
820 |
|
tm = localtime(&s.st_mtime); |
821 |
|
strftime(date, 512, "%a, %d %b %Y %H:%M:%S %Z", tm); |
822 |
if(phase == 0 && !S_ISDIR(s.st_mode)) { |
if(phase == 0 && !S_ISDIR(s.st_mode)) { |
823 |
free(fpth); |
free(fpth); |
824 |
continue; |
continue; |
892 |
addstring(&str, "<tr>\n"); |
addstring(&str, "<tr>\n"); |
893 |
addstring(&str, " <td><img src=\"%s\" alt=\"icon\"></td>\n", icon); |
addstring(&str, " <td><img src=\"%s\" alt=\"icon\"></td>\n", icon); |
894 |
addstring(&str, " <td><a href=\"%l\"><code>%h</code></a></td>\n", items[i], itm); |
addstring(&str, " <td><a href=\"%l\"><code>%h</code></a></td>\n", items[i], itm); |
895 |
|
addstring(&str, " <td><code> %h </code></td>\n", date); |
896 |
addstring(&str, " <td><code> %h </code></td>\n", showmime); |
addstring(&str, " <td><code> %h </code></td>\n", showmime); |
897 |
addstring(&str, " <td><code> %s </code></td>\n", size); |
addstring(&str, " <td><code> %s </code></td>\n", size); |
898 |
addstring(&str, "</tr>\n"); |
addstring(&str, "</tr>\n"); |