Changeset 34 in cheroxy
- Timestamp:
- 11/20/12 16:31:22 (11 years ago)
- Location:
- trunk/src
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/CRXProxy.cpp
r28 r34 141 141 const int aBufferSize) const 142 142 { 143 void * aPtr = static_cast<void *> (aBuffer); 143 void * aPtr = static_cast<void *> (aBuffer); 144 145 int aCopyLength = 0; 146 int aRemainLength = aBufferSize; 147 const int aHeaderLength = mHttpRequest.GetHeader ().length (); 144 148 145 149 /*----------------------------------------------------------------*/ … … 147 151 return NULL; 148 152 149 if (aBufferSize > 0) 150 memcpy (aPtr, mHttpRequest.GetHeader ().c_str (), aBufferSize); 153 aCopyLength = aRemainLength < aHeaderLength ? aBufferSize : aHeaderLength; 154 if (aCopyLength > 0) 155 memcpy (aPtr, mHttpRequest.GetHeader ().c_str (), aCopyLength); 151 156 /*----------------------------------------------------------------*/ 152 157 … … 175 180 const int aBufferSize) const 176 181 { 177 void * aPtr = static_cast<void *> (aBuffer); 178 179 int aRemainLength = aBufferSize; 182 void * aPtr = static_cast<void *> (aBuffer); 183 184 int aCopyLength = 0; 185 int aRemainLength = aBufferSize; 186 const int aHeaderLength = mHttpResponse.GetHeader ().length (); 187 const int aContentLength = mHttpResponse.GetContentLength (); 180 188 181 189 /*----------------------------------------------------------------*/ … … 183 191 return NULL; 184 192 185 if (aRemainLength > 0) 186 memcpy (aPtr, mHttpResponse.GetHeader ().c_str (), aRemainLength); 187 188 aRemainLength -= mHttpResponse.GetHeader ().length (); 189 190 if (aRemainLength > 0) 191 memcpy (aPtr, mHttpResponse.GetContentBody (), aRemainLength); 193 aCopyLength = aRemainLength < aHeaderLength ? aBufferSize : aHeaderLength; 194 if (aCopyLength > 0) 195 memcpy (aPtr, mHttpResponse.GetHeader ().c_str (), aCopyLength); 196 197 aRemainLength -= aCopyLength; 198 199 aCopyLength = aRemainLength < aContentLength ? aRemainLength : aContentLength; 200 if (aCopyLength > 0) 201 memcpy (aPtr, mHttpResponse.GetContentBody (), aCopyLength); 192 202 /*----------------------------------------------------------------*/ 193 203 -
trunk/src/main.cpp
r29 r34 78 78 79 79 char aFilterFileExtension[] = "exe|gif|jpg|png|css|js|ico|"; 80 char * aHttp Request= NULL;81 int aHttp RequestLength = 0;80 char * aHttpMessage = NULL; 81 int aHttpMessageLength = 0; 82 82 83 83 /*----------------------------------------------------------------*/ … … 111 111 if (!aProxy->CheckRequestFilter (CRX_FILTER_REQUEST_FILE_EXTENSION)) 112 112 { 113 aHttpRequestLength = aProxy->GetHttpRequestLength (); 114 aHttpRequest = (char *) calloc (aHttpRequestLength + 1, 1); 115 cout << aProxy->GetHttpRequest (aHttpRequest, aHttpRequestLength) << endl; 116 free (aHttpRequest); 113 aHttpMessageLength = aProxy->GetHttpRequestLength (); 114 aHttpMessage = (char *) calloc (aHttpMessageLength + 1, 1); 115 cout << aProxy->GetHttpRequest (aHttpMessage, aHttpMessageLength) << endl; 116 free (aHttpMessage); 117 118 aHttpMessageLength = aProxy->GetHttpResponseLength (); 119 aHttpMessage = (char *) calloc (aHttpMessageLength + 1, 1); 120 cout << aProxy->GetHttpResponse (aHttpMessage, aHttpMessageLength) << endl; 121 free (aHttpMessage); 117 122 } 118 123
Note:
See TracChangeset
for help on using the changeset viewer.