author | Michael Krelin <hacker@klever.net> | 2005-07-04 18:08:49 (UTC) |
---|---|---|
committer | Michael Krelin <hacker@klever.net> | 2005-07-04 18:08:49 (UTC) |
commit | c8bcbfb951eec5fe14dac0b14f4faaf4a9f9f229 (patch) (unidiff) | |
tree | 60d24c0465cd57c839fa46de97cc35e59cc5b535 | |
parent | 43d47575878e4eaf3c8da84bf609fcd0bde595fb (diff) | |
download | kingate-c8bcbfb951eec5fe14dac0b14f4faaf4a9f9f229.zip kingate-c8bcbfb951eec5fe14dac0b14f4faaf4a9f9f229.tar.gz kingate-c8bcbfb951eec5fe14dac0b14f4faaf4a9f9f229.tar.bz2 |
added buffers to fastcgi streambufs. It gains compatibility with normal streambuf manipulations at the cost of performance (according to comments in fcgi devkit). The performance lost should not be disastrous, though.
-rw-r--r-- | include/kingate/fastcgi.h | 15 | ||||
-rw-r--r-- | src/fastcgi.cc | 5 |
2 files changed, 19 insertions, 1 deletions
diff --git a/include/kingate/fastcgi.h b/include/kingate/fastcgi.h index fd293b9..6f136b3 100644 --- a/include/kingate/fastcgi.h +++ b/include/kingate/fastcgi.h | |||
@@ -43,2 +43,7 @@ namespace kingate { | |||
43 | /** | 43 | /** |
44 | * buffer for sbin | ||
45 | * @see sbin | ||
46 | */ | ||
47 | char buf_sbin[512]; | ||
48 | /** | ||
44 | * stdin fcgi streambuf. | 49 | * stdin fcgi streambuf. |
@@ -47,2 +52,7 @@ namespace kingate { | |||
47 | /** | 52 | /** |
53 | * buffer for sbout | ||
54 | * @see sbout | ||
55 | */ | ||
56 | char buf_sbout[512]; | ||
57 | /** | ||
48 | * stdout fcgi streambuf. | 58 | * stdout fcgi streambuf. |
@@ -51,2 +61,7 @@ namespace kingate { | |||
51 | /** | 61 | /** |
62 | * buffer for sberr | ||
63 | * @see sberr | ||
64 | */ | ||
65 | char buf_sberr[512]; | ||
66 | /** | ||
52 | * stderr fcgi streambuf. | 67 | * stderr fcgi streambuf. |
diff --git a/src/fastcgi.cc b/src/fastcgi.cc index 6285370..8b7668c 100644 --- a/src/fastcgi.cc +++ b/src/fastcgi.cc | |||
@@ -39,3 +39,6 @@ namespace kingate { | |||
39 | fcgi_interface::fcgi_interface(fcgi_socket& s,int f) | 39 | fcgi_interface::fcgi_interface(fcgi_socket& s,int f) |
40 | : sin(&sbin), sout(&sbout), serr(&sberr) { | 40 | : sbin(buf_sbin,sizeof(buf_sbin)), |
41 | sbout(buf_sbout,sizeof(buf_sbout)), | ||
42 | sberr(buf_sberr,sizeof(buf_sberr)), | ||
43 | sin(&sbin), sout(&sbout), serr(&sberr) { | ||
41 | if( FCGX_InitRequest(&request,s.sock,f) ) | 44 | if( FCGX_InitRequest(&request,s.sock,f) ) |