■スレッドリストへ戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50
read.cgi 2006―JavaScriptはCGIの夢を見るか
- 94 : 株価【800】 ▲ ◆cZfSunOs.U :2006/07/26(水) 23:10:45 ID:oRQikQhd0
- 不正なバイトシーケンスを無視して 500 エラーにしないようにするパッチ.
--- httpd-2.2.2/modules/filters/mod_charset_lite.c Sat Apr 22 10:53:06 2006
+++ httpd-2.2.2/modules/filters/mod_charset_lite.c Sat Apr 22 10:53:06 2006
@@ -188,6 +188,31 @@
return NULL;
}
+static apr_status_t _xlate_conv_buffer_no_eilseq(apr_xlate_t *convset,
+ const char *inbuf,
+ apr_size_t *inbytes_left,
+ char *outbuf,
+ apr_size_t *outbytes_left)
+{
+ apr_status_t rv;
+
+ while (inbytes_left && outbytes_left) {
+ apr_size_t inbytes = *inbytes_left, outbytes = *outbytes_left;
+
+ if ((rv = apr_xlate_conv_buffer(convset, inbuf, inbytes_left,
+ outbuf, outbytes_left)) != APR_EINVAL) /* EILSEQ */
+ break;
+ if (*inbytes_left)
+ inbuf += inbytes - --(*inbytes_left);
+ if (*outbytes_left)
+ (outbuf += outbytes - --(*outbytes_left))[-1] = '?';
+ }
+
+ return rv != APR_EINVAL ? rv : APR_SUCCESS;
+}
+
+#define apr_xlate_conv_buffer _xlate_conv_buffer_no_eilseq
+
/* find_code_page() is a fixup hook that decides if translation should be
* enabled; if so, it sets up request data for use by the filter registration
* hook so that it knows what to do
317KB
新着レスの表示
スレッドリストへ戻る 全部 前100 次100 最新50
0ch BBS 2004-10-30