Changeset 156
- Timestamp:
- Feb 5, 2016, 9:06:37 AM (8 years ago)
- Location:
- uKadecot/trunk
- Files:
-
- 1 added
- 1 deleted
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
uKadecot/trunk/uip/apps/webserver/httpd.c
r155 r156 107 107 char headers[MAX(sizeof(http_header_404), sizeof(http_header_200)) 108 108 + sizeof(http_content_encoding_gzip) 109 + sizeof(http_location) + sizeof(((struct httpd_state *)0)->filename) + 2 109 110 + sizeof(union temp_type_t) 110 111 ]; … … 212 213 len = strlen(s->filename); 213 214 memcpy(pos, s->filename, len); pos += len; 215 if (s->query != NULL) { 216 pos[0] = '?'; pos++; 217 len = strlen(s->query); 218 memcpy(pos, s->query, len); pos += len; 219 } 214 220 len = 2; 215 221 memcpy(pos, "\r\n", len); pos += len; 216 222 } 217 223 218 ptr = strrchr(s-> message.request_url, ISO_period);224 ptr = strrchr(s->filename, ISO_period); 219 225 if (ptr == NULL) { 220 226 len = strlen(http_content_type_binary); … … 418 424 } 419 425 426 ptr = strrchr(s->message.request_url, '?'); 427 if (ptr != NULL){ 428 ptr[0] = '\0'; 429 s->query = &ptr[1]; 430 } 431 else 432 s->query = NULL; 433 420 434 /* ""か"/"なら"index.html"に変更 */ 421 435 if ((s->message.request_url[0] == '\0') || ((s->message.request_url[0] == '/') && (s->message.request_url[1] == '\0'))) { 422 436 s->drv = 0; 423 437 strcpy_s(s->filename, sizeof(s->filename), http_index_html); 438 s->file.redirect = 1; 424 439 } 425 440 /* "/~/"ならSDカードから読み込み */ … … 432 447 strcpy_s(s->filename, sizeof(s->filename), s->message.request_url); 433 448 } 434 435 ptr = strrchr(s->filename, '?');436 if (ptr != NULL)437 ptr[0] = '\0';438 449 439 450 /* httpd_log_file(uip_conn->ripaddr, s->message.request_url);*/ -
uKadecot/trunk/uip/apps/webserver/httpd.h
r155 r156 60 60 char filename[256]; 61 61 int len; 62 char *query; 62 63 struct httpd_fs_file file; 63 64 };
Note:
See TracChangeset
for help on using the changeset viewer.