2005-11-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
[mono.git] / mcs / class / System.Web / System.Web / ChangeLog
1 2005-11-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2
3         * HttpApplication.cs: ignore TAE in ProcesssError. The Error event might
4         redirect or transfer and that causes a TAE to be thrown. Fixes
5         bug #76573.
6
7 2005-11-01  Chris Toshok  <toshok@ximian.com>
8
9         * VirtualPathUtility.cs: new (partial implementation) to get some
10         MS provider examples compiling.
11
12 2005-10-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
13
14         * HttpContext.cs: added a new internal overload for ClearError.
15
16 2005-10-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
17
18         * HttpRuntime.cs: invoke callbacks on private items in the cache before 
19         calling disposing the app. factory. This way we get notifications of
20         removal for all sessions stored in the cache (InProc only).
21
22 2005-10-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
23
24         * HttpResponseStream.cs: reworked buffering so that adjacents blocks are
25         written at once. Also fix bug #76460.
26
27 2005-10-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
28
29         * HttpResponseStream.cs: when allocating a chunk larger than the
30         default chunk size, mark all the blocks as taken. Fixes bug
31         #76452.
32
33 2005-10-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
34
35         * HttpResponse.cs: use HaveFilter instead of Filter.
36         * HttpResponseStream.cs: allocate chunks of the requested size
37         when it's > 32KB. Fixes bug #76460.
38
39 2005-10-14  Sebastien Pouliot  <sebastien@ximian.com> 
40
41         * ServerVariablesCollection.cs: Added a demand for 
42         SerializationFormatter on GetObjectData method (even if it's not 
43         really required in this case as it remove warnings from gendarme.
44
45 2005-10-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
46
47         * HttpResponse.cs:
48         * HttpRequest.cs: buglets in error checking in Filter.
49
50 2005-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
51
52         * OutputFilterStream.cs: proxy class for response filters.
53         * HttpResponse.cs: moved all the actual write operations into the
54         response stream. Handle response filtering. When caching, get the
55         actual length of the data, not the buffer length.
56         * HttpApplication.cs: if there's no error, invoke the filters before
57         updating the request cache.
58         * HttpResponseStream.cs: new Filter property. SendChunkSize is moved
59         here and now supports writing the final chunk. New method ApplyFilter
60         that filters the existing buckets and replaces them with the filtered
61         ones. Modified Write to deal with buffering and filtering.
62
63 2005-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
64
65         * HttpResponseStream.cs: allow for writes of more than 32K at once.
66
67 2005-10-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
68
69         * InputFilterStream.cs proxy stream for use by filters.
70         * HttpRequest.cs: implement input filtering.
71
72 2005-10-02 Eyal Alaluf <eyala@mainsoft.com>
73         * HttpApplication.jvm.cs - Workaround for use of yield in
74         HttpApplication.cs HttpRuntime.cs: AppDomain.Unload is not supported
75         * under TARGET_J2EE
76
77 2005-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
78
79         * HttpResponseStream.cs: remove dead code.
80
81 2005-09-29  Sebastien Pouliot  <sebastien@ximian.com> 
82
83         * HttpClientCertificate.cs: Remove last TODO on IsValid. This now 
84         works when using XSP. Now use flags to determine valid/presence.
85
86 2005-09-26  Chris Toshok  <toshok@ximian.com>
87
88         * HttpApplicationFactory.cs (OnAppFileChanged): add null checks
89         for bin_watcher and app_file_watcher so we don't get NRE's here.
90
91 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
92
93         * BrowserCapabilities.cs: don't rely on the win32 attribute to be there.
94         Just use the platform to determine whether Win32 is true or not. Fixes
95         bug #74777.
96
97 2005-09-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
98
99         * HttpApplication.cs: fixed typo when setting UI culture. Closes bug
100         #76189.
101
102 2005-09-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
103
104         * HttpRequest.cs: new SetFilePath() that does not conflict with
105         SetCurrentExePath. Now when transfering from a page to another,
106         CurrentExecutionFilePath and FilePath are correct.
107
108 2005-09-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
109
110         * TraceContext.cs: add new method to store size of controls.
111         * TraceData.cs: render control size.
112         * HttpResponse.cs: new internal method to get the number of bytes of
113         buffered output.
114         * HttpResponseStream.cs: added Length property to the Buckets and new
115         GetTotalLength.
116
117 2005-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
118
119         * TraceData.cs: we have to change the method of getting a control render
120         size. MS does not do this or otherwise would run into the same bug
121         (#76051) that this patch fixes. This is temporarily setting the size
122         to 0.
123
124 2005-09-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
125
126         * HttpResponseStream.cs: implemented Send(stream) for files. Fixes bug
127         #76145.
128
129 2005-09-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
130
131         * HttpRuntime.cs: catch errors when compiling global.asax and
132         initializing the application. Fixes bug #76090.
133
134 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com> 
135  
136         * BrowserCapabilities.cs: Fixed changes (in 2.0) with versions. Fixed
137         compare with "True" (culture and case sensitivity).
138         * HttpApplicationState.cs: Added LinkDemand for Minimal. Use the 
139         internal HttpStaticObjectsCollection ctor to avoid the UnmanagedCode
140         demand.
141         * HttpContext.cs: Added LinkDemand for Minimal. Added 2.0 properties
142         and methods to test CAS on them.
143         * HttpRequest.cs: Added LinkDemand for Minimal. Ensure we return 
144         proper values when worker_request is null.
145         * HttpResponse.cs: Added LinkDemand for Minimal. Ensure we return 
146         proper values when context or WorkerRequest is null. Added 2.0 
147         properties and methods to test CAS on them.
148         * HttpRuntime.cs: Added LinkDemand for Minimal. Added PathDiscovery 
149         demands for properties returning directories. Added demand for High 
150         level on AppDomainAppId and AppDomainId properties, Low level on 
151         IsOnUNCShare, Medium level on ProcessRequest and a demand for 
152         UnmanagedCode on UnloadAppDomain method. Constructor also has a 
153         UnmanagedCode demand for 1.x.
154         * HttpStaticObjectsCollection.cs: Added LinkDemand for Minimal. Added
155         a UnmanagedCode demand to public ctor. Added internal ctor without the
156         demand. Changed Serialize and Deserialize methods to public for 2.0.
157
158 2005-09-14  Sebastien Pouliot  <sebastien@ximian.com>
159
160         * HttpWorkerRequest.cs: Removed TODO for 2.0 APIs and return the 
161         default values for them.
162
163 2005-09-13  Sebastien Pouliot  <sebastien@ximian.com>
164
165         * HttpApplication.cs: : Added LinkDemand and InheritanceDemand (class)
166         for Minimal. Changed AssemblyLocation to a property (so it doesn't 
167         require special permission, PathDiscovery) to create an instance. 
168         Protected Modules property with a Demand for High level. Added some 
169         missing HttpException for null context.
170         * HttpServerUtility.cs: Added LinkDemand for Minimal. Added demands 
171         for UnmanagedCode on all CreateObject* methods. Added demand for 
172         Medium level on MachineName and ScriptTimeout properties. Added new
173         overloaded Transfer method (2.0) to test CAS on it.
174         * HttpUtility.cs: Added LinkDemand for Minimal. Added [Obsolete] to 
175         ctor (2.0). Changed some return values when 'count' is 0. Added 
176         ParseQueryString (overload) methods for 2.0 (to enabled CAS testing on
177         them).
178         * HttpWorkerRequest.cs: Added LinkDemand and InheritanceDemand (class)
179         for Minimal. Added RequestTraceIdentifier and RootWebConfigPath (2.0) 
180         properties, GetPreloadedEntityBody, GetPreloadedEntityBodyLength, 
181         GetTotalEntityBodyLength and ReadEntityBody (2.0) methods to test CAS 
182         on them. Fixed SendResponseFromMemory to ignore IntPtr.Zero (used in 
183         tests without failures).
184         * ServerVariablesCollection.cs: Fixed loadServerVariablesCollection 
185         when HttpWorkerRequest is null.
186         * TraceContext.cs: Added LinkDemand for Minimal. Fixed default Mode 
187         (SortByTime). Added new (2.0) TraceFinished event to test CAS on it.
188
189 2005-09-13  Sebastien Pouliot  <sebastien@ximian.com> 
190  
191         * HttpBrowserCapabilities.cs: Added LinkDemand and InheritanceDemand 
192         (class) for Minimal. Note that current MCS has problem compiling 
193         security attributes on partial class (bug #75969).
194         * HttpCachePolicy.cs: Added LinkDemand for Minimal. Added 2.0 methods
195         (stub) to enable CAS tests on them.
196         * HttpCacheVaryByHeaders.cs: Added LinkDemand for Minimal.
197         * HttpCacheVaryByParams.cs: Added LinkDemand for Minimal.
198         * HttpClientCertificate.cs: Added LinkDemand and InheritanceDemand 
199         (class) for Minimal.
200         * HttpCookie.cs: Added LinkDemand for Minimal.
201         * HttpCookieCollection.cs: Added LinkDemand for Minimal.
202         * HttpFileCollection.cs: Added LinkDemand for Minimal.
203         * HttpModuleCollection.cs: Added LinkDemand for Minimal.
204         * HttpPostedFile.cs: Added LinkDemand for Minimal.
205         * HttpRequestPriority.cs: Fix enum values.
206         * HttpWriter.cs: Added LinkDemand for Minimal.
207
208 2005-09-13  Sebastien Pouliot  <sebastien@ximian.com>
209
210         * ProcessInfo.cs: Added LinkDemand and InheritanceDemand (class) for
211         Minimal.
212         * ProcessModelInfo.cs: Added LinkDemand and InheritanceDemand (class)
213         for Minimal. Methods GetCurrentProcessInfo and GetHistory are also
214         protected by Demand for High level.
215
216 2005-09-13  Sebastien Pouliot  <sebastien@ximian.com> 
217  
218         * HttpCompileException.cs: Added new public ctors and [Serializable]
219         to 2.0. Added new Message property and GetObjectData (protected by a
220         demand for SerializationFormatter) for 2.0. Fixed line-ending.
221         * HttpException.cs: Added LinkDemand and InheritanceDemand (class) for
222         Minimal. Renamed parameters to match documentation.
223         * HttpParseException.cs: Added LinkDemand (class) for Minimal. Added
224         demand for SerializationFormatter on GetObjectData method. Fixed 
225         line-ending.
226         * HttpRequestValidationException.cs: Added new public ctors and 
227         [Serializable] to 2.0. Added LinkDemand for Minimal.
228         * HttpUnhandledException.cs: Added new public ctors and [Serializable]
229         to 2.0. Removed unused internal ctor. Added LinkDemand for Minimal.
230         Fixed line-ending.
231
232 2005-09-13  Sebastien Pouliot  <sebastien@ximian.com>
233
234         * HttpResponseSubstitutionCallback.cs: New. 2.0 delegate.
235         * TraceContextEventArgs.cs: New. 2.0 class.
236         * TraceContextEventHandler.cs: New. 2.0 delegate.
237
238 2005-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
239
240         * HttpRequest.cs: use GetServerName instead of GetLocalAddress when
241         building the Url.
242
243 2005-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
244
245         * HttpRequest.cs: fix the indexer.
246
247 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
248
249         * HttpPostedFile.cs: fixes in Seek and Position.
250
251 2005-09-08  Sebastien Pouliot  <sebastien@ximian.com>
252
253         * HttpRequest.cs: Make sure the MemoryStream created have their 
254         contents marked as public - or else you can't call GetBuffer on them!
255
256 2005-09-08  Miguel de Icaza  <miguel@novell.com>
257
258         * HttpRequest.cs: Patch from Juraj Skripsky <js@hotfeet.ch> that
259         fixes UrlReferrer. 
260
261 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
262
263         * HttpPostedFile.cs: Make this class actually work. Every time we read,
264         we have to position the underlying stream.
265
266 2005-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
267
268         * HttpRequest.cs: reading multipart/form-data works again.
269
270 2005-09-08 Eyal Alaluf <eyala@mainsoft.com>
271         * HttpRequest.cs: Under TARGET_JVM the input stream must allow GetBuffer.
272
273 2005-09-08 Eyal Alaluf <eyala@mainsoft.com>
274         * HttpApplicationFactory.cs: TARGET_J2EE/JVM fix.
275
276 2005-09-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
277
278         * HttpRequest.cs: correctly detect multipart/form-data.
279
280 2005-09-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
281
282         * HttpApplicationFactory.cs: recycle after invoking session_end.
283
284 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
285
286         * HttpRuntime.cs: remove Console.
287
288         * HttpApplicationFactory.cs: don't hook Session_End, but keep
289         the MethodInfo around for later invocation if needed. Don't call
290         GetMethods() for every HttpApplication (or derived class) instances.
291         Added a method, used by SessionStateModule, that will create use an
292         application without context to invoke Session_End. Keep a pool of
293         applications that are meant to be used by this method only.
294
295         * HttpApplication.cs: add a SetSession method and do not
296         attach all the events if the application is for Session_End only.
297
298 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
299
300         * HttpRuntime.cs: actually unload the domain when requested. Reformatted
301         FinishUnavailable() and removed the 'Location' header form the error.
302
303         * HttpApplicationFactory.cs: set up the watcher for the bin directory.
304         This also prevents a nullref when global.asax is changed.
305
306 2005-09-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
307
308         * HttpApplication.cs: fixed bug introduced when moving GetHandler call
309         around. Now we get error pages again.
310
311 2005-09-06  Miguel de Icaza  <miguel@novell.com>
312
313         * HttpApplication.cs: Catch EndRequest errors as well.
314
315 2005-09-05  Miguel de Icaza  <miguel@novell.com>
316
317         * HttpApplication.cs: Invoke EndRequest handler before OutputPage
318         as FormsAuthentication will issue a Redirect from the EndRequest 
319         handler. 
320
321 2005-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
322
323         * HttpApplication.cs: when writing an error message, catch the possible
324         write error.
325
326 2005-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
327
328         * HttpResponseStream.cs: prevent invalid cast exception if the first
329         thing written is a file.
330
331 2005-09-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
332
333         * HttpApplication.cs: fix invalid cast exception (bug #75926).
334
335 2005-09-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
336
337         * HttpApplicationFactory.cs: only trigger the Application_Start event
338         once. It was being invoked more than once when several clients were
339         hitting the server at the same time on startup.
340
341 2005-09-01 Eyal Alaluf <eyala@mainsoft.com>
342
343         * HttpContext.cs HttpResponse.cs HttpWorkerRequest.cs HttpRuntime.cs
344           HttpApplicationFactory.cs HttpApplication.cs: TARGET_J2EE/JVM fixes.
345           Mostly workaround limited AppModel in TARGET_J2EE.
346
347 2005-08-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
348
349         * HttpResponse.cs: if the request method is HEAD, that's equivalent to
350         SuppressContent. Added an internal TransmitFile that allows setting the
351         final_flush flag.
352         * StaticFileHandler.cs: use the new internal TransmitFile and remove
353         generation of Content-Length header, as now it's computed correctly.
354         * HttpApplication.cs: remove debugging stuff.
355         * HttpResponseStream.cs: suppress_content is checked in HttpResponse.
356
357 2005-08-31  Miguel de Icaza  <miguel@novell.com>
358
359         Removed debugging info.
360         
361         * HttpApplication.cs: Add support for async handlers. 
362
363         Add extra 2.x methods. 
364
365 2005-08-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
366
367         * BrowserCapabilities.cs: removed extra 'using'.
368
369         * HttpApplication.cs: use just the 'modcoll' to hold the collection of
370         modules instead of having a separate 'modules' one.
371
372 2005-08-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
373
374         * HttpApplication.cs: clone the module collection so that
375         it's not shared between HttpApplications. Call GetHandler() in the
376         right place.
377
378 2005-08-30  Miguel de Icaza  <miguel@novell.com>
379
380         * HttpApplication.cs: Add the new 2.x method overloads that take a
381         data object.
382
383         (RunHooks): Pass the extra data instead of null.
384
385         * HttpCookie.cs (HttpOnly): Add 2.x cookie header.
386
387         * BrowserCapabilities.cs: Move the core of the capabilities into a
388         separate file.  Use partial classes to choose what version to
389         compile against.
390
391         * HttpBrowserCapabilities.cs: Update to move the code elsewhere.
392
393 2005-08-30 Eyal Alaluf <eyala@mainsoft.com>
394
395         * HttpResponseStream.cs: Fix a bug introduced by last fix (thanks to
396         Ben)
397
398 2005-08-30 Eyal Alaluf <eyala@mainsoft.com>
399
400         * HttpResponseStream.cs: Compilation fixes for TARGET_JVM. TARGET_JVM
401         does not support unsafe code. I localized all unsafe code within Chunk
402         & Block and created a managed version of Chunk.
403
404 2005-08-30 Eyal Alaluf <eyala@mainsoft.com>
405         * HttpApplicationFactory.cs: Compilation fixes for TARGET_J2EE. Under
406         TARGET_J2EE static fields are shared by all app domains. We handle
407         this difference by explicitly getting/setting values from the app
408         domain.  Since HttpApplicationFactory has many static fields, I
409         refactored it to have one static instance and moved the static fields
410         into instance fields.
411
412 2005-08-29 Eyal Alaluf <eyala@mainsoft.com>
413
414         * HttpRequest.cs: Disable use of IntPtrStream for TARGET_JVM
415
416 2005-08-29 Eyal Alaluf <eyala@mainsoft.com>
417
418         * HttpContext.cs: Compilation fixes for TARGET_J2EE/JVM
419
420 2005-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
421
422         * HttpResponse.cs: don't duplicate the 'charset=' and don't send a
423         charset for unknown MIME types.
424         * StaticFileHandler.cs: set the Content-Length header here.
425         * HttpRequest.cs: prevent nullrefs when we have no 'charset='.
426
427 2005-08-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
428
429         * StaticFileHandler.cs: use TransmitFile instead of WriteFile. This way
430         xsp will use sendfile().
431
432 2005-08-28  Chris Toshok  <toshok@ximian.com>
433
434         * SiteMapNode.cs: fix IHierarchyData.GetParent.
435
436 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
437
438         * HttpRequest.cs:
439         * IntPtrStream.cs: now we only have a read-only MemoryStream or an
440         IntPtrStream. The copy is moved into HttpRequest.
441
442 2005-08-26  Sebastien Pouliot  <sebastien@ximian.com>
443
444         * WebCategoryAttribute.cs: New. Required internal attribute.
445         * WebSysDescriptionAttribute.cs: New. Required internal attribute.
446
447 2005-08-26  Jackson Harper  <jackson@ximian.com>
448
449         * HttpResponseStream.cs: Use GetBuffer so the memory isn't
450         duplicated.
451
452 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
453
454         * HttpApplication.cs: GetHandler might return null when, for example,
455         a web service fails, but that does not mean that returning a null
456         handler should throw another exception, as the web service code
457         serialized the error as a faultString. So if the handler is null, just
458         don't call ProcessRequest and keep going.
459
460 2005-08-26  Jackson Harper  <jackson@ximian.com>
461
462         * HttpResponse.cs: Send the cached headers if this is a cached
463         response. Save the headers, date header, and page data. Fix a typo.
464         * HttpResponseStream.cs: Add new accesor to get a byte [] of the
465         page data.
466
467 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
468
469         * HttpWorkerRequest.cs: SetEndOfSendNotification is a noop. No matter
470         what callback you use that never gets called. In XSP I actually
471         implement something for this method.
472         * HttpServerUtility.cs: unused variable.
473
474 2005-08-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
475
476         * HttpInputStream.cs: new ctor that takes a byte [].
477         * IntPtrStream.cs: make it work on a byte [] too.
478
479         * HttpRequest.cs:
480         (ContentLength): return 0 for negative numbers or error parsing, but
481         keep content_length negative in those cases.
482         (MakeInputStream): when there's no content-length (or it's negative),
483         we still read the request into a MemoryStream. Use
484         IsEntireEntityIsPreloaded() as a fast path.
485
486 2005-08-25  Sebastien Pouliot  <sebastien@ximian.com>
487
488         * HttpClientCertificate.cs: On 1.x the .ctor throws a 
489         ArgumentNullException (but 2.0 throws a NRE).
490
491 2005-08-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
492
493         * HttpRequest.cs: HttpMethod deserves its own field. Fix IsLocal.
494
495 2005-08-25  Chris Toshok  <toshok@ximian.com>
496
497         * HttpApplication.cs (IsReusable): return true.
498         (InitOnce): remove the initialization of handler_factory from
499         here.
500         (GetHandler) and move it here, so we make sure to load handlers
501         from all needed web.config files.
502
503 2005-08-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
504
505         * HttpServerUtility.cs: use GetHandler().
506         * HttpApplication.cs: remove obsolete method. Now Transfe/Execute work.
507
508 2005-08-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
509
510         * HttpApplication.cs: no need for the local var. here.
511
512 2005-08-25  Chris Toshok  <toshok@ximian.com>
513
514         * HttpApplication.cs (InitOnce): move the initialization of
515         modules above the call to HttpApplicationFactory.AttachEvents,
516         since that method accesses HttpApplication.Modules.  Fixes
517         nGallery.
518         (IsReusable): mark TODO.
519
520 2005-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
521
522         * HttpResponseHeader.cs: removed obsolete class.
523         * HttpResponse.cs: no more 'obsolete' warnings.
524
525 2005-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
526
527         * HttpRuntime.cs: implemeted some missing properties.
528
529 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
530
531         * HttpResponse.cs: implemented RemoveOutputCacheItem().
532
533 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
534
535         * HttpApplication.cs: implemented GetVaryByCustomString().
536
537 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
538
539         * HttpRequest.cs: implemented SetHeader (allows adding a header
540         circumventing the read-only protection of the collection) and SetForm,
541         which just assigns a value of the 'form' collection.
542         * HttpServerUtility.cs: NameValueCollection -> WebROCollection.
543
544 2005-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
545
546         * HttpContext.cs:
547         * HttpRequest.cs: implemented RewritePath and supporting methods.
548
549 2005-08-22  Sebastien Pouliot  <sebastien@ximian.com>
550
551         * HttpRequest.cs: Avoid NRE if work_request if null in the ctor.
552         * HttpResponse.cs: Avoid NRE if work_request if null in the ctor.
553
554 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
555
556         * HttpApplication.cs: if there's any exception thrown when getting the
557         handler, don't add an extra error to the context, as we already have
558         one.
559
560 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
561
562         * HttpWriter.cs:
563         * HttpResponse.cs:
564         * HttpWorkerRequest.cs:
565         * HttpApplication.cs: added mising attributes and enabled methods
566         present in 1.1 SP1.
567
568 2005-08-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
569
570         * WebROCollection.cs: a collection that allows setting IsReadOnly.
571         * HttpRequest.cs: implemented MapImageCoordinates(). Use WebROCollection
572         instead of a NameValueCollection in Form, Headers, Params, QueryString.
573
574 2005-08-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
575
576         * HttpInputStream.cs: new copy ctor.
577         * IntPtrStream.cs: getters for base_address and size.
578         * HttpRequest.cs: implemented SaveAs(). Use a wrapper on top of
579         InputStream so that reading POST form or files does not modify the state
580         if InputStream. Don't use uri_builder.Query in QueryStringRaw, as it
581         returns the '?'.
582
583 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
584
585         * HttpRequest.cs: implemented UserLanguages and reuse code from
586         AcceptTypes.
587
588 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
589
590         * HttpRequest.cs: implemented AcceptTypes.
591
592 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
593
594         * HttpRequest.cs: implemented this[] in terms of Params. Don't add the
595         header collection in Params.
596
597 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
598
599         * HttpRequest.cs: fix Files property.
600         * HttpApplication.cs: invoke the default authentication event after all 
601         the other auth. modules.
602
603 2005-08-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
604
605         * ServerVariablesCollection.cs: mark the collection as read-only except
606         when we fill it. Add the HTTP_blah key/value pairs too.
607
608 2005-08-18  Chris Toshok  <toshok@ximian.com>
609
610         * HttpRequest.cs (get_Params): implement.
611
612 2005-08-17  Chris Toshok  <toshok@ximian.com>
613
614         * HttpResponse.cs: HttpResponse's Cookie's collection acts
615         differently than HttpRequests in that it never returns null from
616         the "this [string]" accessor.
617
618 2005-08-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
619
620         * HttpRequest.cs: check length 0 case when reading a POST.
621
622 2005-08-17 Gonzalo Paniagua Javier <gonzalo@ximian.com>
623
624         * HttpContext.cs: added security attributes for User and
625         SkipAuthorization properties.
626         * HttpApplicationFactory.cs: AttachEvents is now called form the
627         application .ctor. Recycle instead of dispose.
628         * HttpApplication.cs: attach events to the newly created application.
629
630 2005-08-15  Jackson Harper  <jackson@ximian.com>
631
632         * ApplicationShutdownReason.cs: make build
633
634 2005-08-15  Miguel de Icaza  <miguel@novell.com>
635
636         * HttpApplication.cs: Update comments
637
638         * HttpPostedFile.cs: Use a substream to read from the uploaded
639         multiparts. 
640
641         * HttpRequest.cs: use new code to read the uploaded files.
642
643 2005-08-12  Miguel de Icaza  <miguel@novell.com>
644
645         2.x API fixage and small additions:
646         
647         * HttpResponse.cs: Make constructor internal.
648
649         * HttpRequest.cs (IsLocal): Expose if NET_2.x
650
651         * HttpContext.cs: Remove internal routine.
652
653         * HttpApplication.cs: Add 2.x events. 
654
655         * HttpRequest.cs: Another iFolder issue: I was not setting up the
656         uri_builder here.
657
658         Fixes to get iFolder to work:
659         
660         * HttpApplicationFactory.cs: Set the context when we are initting
661         the application.
662
663         * HttpApplication.cs (SetContext): helper routine. 
664
665         * HttpResponse.cs: Implement the various cache operations:n
666         Expires, ExpiresAbsolute, CacheControl.
667
668         Actually produce the Cache-Control header, the "Cache" property
669         takes precedence over the compatibility settings (Expires,
670         ExpiresAbsolutely and CacheControl). 
671
672         * HttpCachePolicy.cs: Fix style.
673
674         Fix the generation of the headers, use lower-case values, do not
675         add the max-value if the value is zero.  
676
677         Allow for all possible values in SetCacheability. 
678
679         * HttpRuntime.cs (ClrInstallDirectory): Implement.
680
681         * HttpResponseStream.cs: Remove debugging stuff. 
682
683 2005-08-11  Miguel de Icaza  <miguel@novell.com>
684
685         Big chunked handling rewrite, and integration of Ben's unmanaged
686         output stream.
687
688         * HttpWriter.cs: Delegate chunked encoding writing to the
689         HttpResponse. 
690
691         * HttpResponse.cs: Rework the chunked encoding system, centralize
692         it all. 
693
694         * HttpResponseStream.cs: Deploy Ben's bucket-base unmanaged
695         buffers code. 
696
697         Changed the way that we handle chunked encoding, centralize it
698         all;  
699
700         Remove a lot of manual handling of buffering turned off, and
701         instead delegate it all to Flush, fixes several issues with the
702         new framework.
703
704         * HttpWorkerRequest.cs (SendResponseFromMemory (IntPtr, int)):
705         Provide a default implementation since currently XSP does not have
706         this method implemented. 
707
708 2005-08-11  Sebastien Pouliot  <sebastien@ximian.com> 
709  
710         * HttpClientCertificate.cs: Culture insensitive int parsing. Fixed
711         NET_2_0 build.
712
713 2005-08-10  Miguel de Icaza  <miguel@novell.com>
714
715         * ServerVariablesCollection.cs: For Ben.  Implement the header
716         fetching here, do not implement it in HttpRequest.cs.
717
718 2005-08-10  Sebastien Pouliot  <sebastien@ximian.com> 
719  
720         * HttpClientCertificate.cs: Changed IsPresent logic so that new unit
721         tests will work as expected.
722
723 2005-08-10  Sebastien Pouliot  <sebastien@ximian.com>
724
725         * HttpClientCertificate.cs: Implemented, except for validation. Note 
726         that the HttpWorkerRequest derived classes must be updated to supply 
727         the required informations.
728         * HttpRequest.cs: Create an HttpClientCertificate on first call to
729         ClientCertificate.
730
731 2005-08-09  Miguel de Icaza  <miguel@novell.com>
732
733         * HttpRuntime.cs (AspInstallDirectory): Implement.
734
735 2005-08-09  Sebastien Pouliot  <sebastien@ximian.com>
736
737         * HttpClientCertificate.cs: New. Stub. It won't be fun to test.
738
739 2005-08-04  Ben Maurer  <bmaurer@ximian.com>
740
741         * HttpContext.cs: Kill a NIE.
742
743 2005-08-04  Miguel de Icaza  <miguel@novell.com>
744
745         * HttpApplicationFactory.cs: Change "Start" event like the "End"
746         event, and only do this once, when we init the type.
747
748         Fire the "Application_Start" event after we create the type.
749
750 2005-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
751
752         * HttpApplication.cs: catch a ThreadAbort (coming from Response.End)
753         here too.
754
755 2005-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
756
757         * HttpResponse.cs: setting the Status property resets the
758         StatusDescription (see the tests) and the default value for the
759         description is the one provided by GetStatusDescription() in
760         HttpWorkerRequest.
761
762 2005-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
763
764         * HttpRequest.cs: s/boundry/boundary/ and fix typo in array creation.
765
766 2005-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
767
768         * HttpApplication.cs: add call to EndOfRequest when everything is said
769         and done.
770
771 2005-08-02  Miguel de Icaza  <miguel@novell.com>
772
773         * HttpResponse.cs: Stub for TransmitFile.
774
775         * HttpRequest.cs (IsAuthenticated): Implement.
776
777 2005-08-01  Miguel de Icaza  <miguel@novell.com>
778
779         * HttpRequest.cs: Cope with implementations of HttpWorkerRequest
780         (unpatched xsp) that do not send back the PreloadedEntityBody. 
781
782         * HttpApplication.cs: keep track of the factory. 
783         (Dispose): Only dispose once, clean up other variables, release
784         the ManualResetEvent.
785         Release the handler to the factory.
786
787         * HttpApplicationFactory.cs: Implement a stack to reuse the
788         applications. 
789
790         * HttpRequest.cs: On uploads, if the ContentLenght is zero, throw
791         a 411.
792
793         * HttpRuntime.cs: Recycle the application after using it.
794
795         * HttpPostedFile.cs: Implement SaveAs.
796
797         * HttpContext.cs: Return the "Server" property.
798
799 2005-08-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
800
801         * HttpServerUtility.cs: implemented missing bits.
802
803 2005-08-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
804
805         * HttpRequest.cs: query string was getting a '?' as the start of the
806         first variable name. This makes the asmx help page work again.
807
808 2005-08-01  Miguel de Icaza  <miguel@novell.com>
809
810         * HttpRequest.cs (Cookies, Forms): Add validation.
811         (Forms): Add application/x-www-form-urlencoded parsing and
812         multipart/form-data parsing.
813         
814         (HttpMultiPart): Implement new class to load multi-part data from
815         a stream since there is no longer a byte [] that holds the data
816         (currently we have an unmanaged IntPtr buffer wrapped as a
817         stream).  Also the 2.x framework will add support for large
818         uploads which are sent directly to disk, which will require the
819         FileStream interface. 
820         
821         (Path, PathInfo): Fill a couple more methods to avoid crashes.
822
823         * HttpContext.cs: Fill another one to get web services summary
824         page painting.  The page does not work though.
825         
826         * HttpApplication.cs: Rework the pipeline to not depend on
827         `finally', as `finally' would not be invoked if we choose not to
828         call the pipeline again (which happens if the `stop' variable is
829         set). 
830
831         Instead force the pipeline to go to the shutdown, and yield from
832         there after all the release-state callbacks have been invoked. 
833
834 2005-07-31  Miguel de Icaza  <miguel@novell.com>
835
836         * HttpApplication.cs: Remove debugging messages since the compiler
837         bug has been fixed.
838
839         You must use at least mcs from revision 47879 for the application
840         pipeline to work. 
841
842 2005-07-30  Miguel de Icaza  <miguel@novell.com>
843
844         * HttpContext.cs: Error handling methods.
845
846         * HttpResponse.cs: Trigger the last event.
847
848         * HttpRuntime.cs: Add queueing of the next request. 
849
850         * HttpApplication.cs: Deploy the new yield-based application
851         pipeline, add error handling to the pipeline.
852         
853         * HttpApplication.cs (AsyncRequestState): Just use the done event
854         from the parent.
855
856 2005-07-29  Miguel de Icaza  <miguel@novell.com>
857
858         * HttpResponseStream.cs, HttpRequest.cs: Fix bugs found by nunit.
859
860         * HttpApplication.cs: Fix a race condition. 
861
862         * HttpResponseStream.cs: Fix bug, send the size of the buffer that
863         we have so far instead of the internal size of the buffer.   This
864         will need work later to ensure we enforce the Content-Length
865         maximum output size if set.
866
867         * ServerVariablesCollection.cs: This class now inherits from
868         NameValueCollection, we should probably review what the middle
869         class did, there are no dependencies on it.
870
871         I need to write tests to investigate if something is missing or
872         has changed in this implementation. 
873
874 2005-07-27  Miguel de Icaza  <miguel@novell.com>
875
876         * HttpRequest.cs: No happy replies here, send a 411.
877
878 2005-07-27  Chris Toshok  <toshok@ximian.com>
879
880         * HttpResponseHeader.cs: remove spew.
881         
882 2005-07-27  Chris Toshok  <toshok@ximian.com>
883
884         * HttpResponseHeader.cs (HttpResponseHandler..ctor): use
885         HttpWorkerRequest.GetKnownResponseHeaderName instead of
886         GetKnownRequestHeaderName.  Fixes Response.Redirect until miguel's
887         new HttpReponse is online.
888
889 2005-07-26  Miguel de Icaza  <miguel@novell.com>
890
891         * HttpResponse.cs: use_chunked is now a byte-array, if not null,
892         we use it to hold the size of the chunked so we do not have to
893         allocate many of these. 
894         (SendSize): Helper routine to send the chunked headers.
895         (BinaryWrite): First user of the chunked writer.
896
897         * HttpApplication.cs: Do not crash if they request a Server
898         instance, but throw a NotImplementedException.
899
900         * HttpRequest.cs: fix a few problems exposed by the regression
901         test suite.
902
903         * HttpRequest.cs (Cookies): use Chris' new constructor to get the
904         cookies parsed.
905
906         : The big Uri rework: instead of using QueryString
907         as the population mechanism, populate an UriBuilder from the
908         various HttpWorkerRequest methods.
909
910         * HttpWorkerRequest.cs (GetProtocol): Implement in terms of
911         IsSecure().
912
913         * HttpResponse.cs: Pointed by Ben, Write (null) is a nop instead
914         of a crash.
915
916         * HttpContext.cs: Add a couple of properties to help the 2.x
917         build.
918         
919         * HttpResponse.cs: Make ContentLength a long, add back support for
920         session's app_path_mod.
921         (ApplyAppPathmodifier): put back.
922         (End): Pass a flag to abort so we can tell the exceptions appart
923         in HttpApplication.
924         (WriteHeaders): Send the HTTP status.
925         (Redirect): Implement.
926         (Write): Use the Output property to load writer when needed.
927         
928         * HttpRequest.cs (ctor): Temporary use of InitFromWR, will fix
929         later. 
930         (MakeInputStream): check content-length size, use routines to load
931         the preloaded data, handle incomplete transfers.
932         (Query): Do not insert null keys into the collection.
933         (Url): implement.
934         (UrlReferer): implement.
935
936         * HttpApplication.cs (RunHooks): Catch Thread.Abort, and call
937         Thread.ResetAbort after each step.
938
939         Ensure that ReleaseState is called if we ever succeed in acquiring
940         the state even if we have stopped the request pipeline.
941
942         Report file not found, directory not found.
943
944 2005-07-25  Miguel de Icaza  <miguel@novell.com>
945
946         * HttpCookieCollection.cs: Add expiration of the cookie. 
947
948         * HttpRequest.cs: Add check for ContentLength, use
949         GetPreloadedEntityBody, correct number of bytes uploaded.
950
951 2005-07-21  Miguel de Icaza  <miguel@novell.com>
952
953         * HttpResponseHeader.cs: Our implementation of HttpResponse only
954         uses the text headers, does not use any constants as XSP would go
955         through a slower code path anyways.
956
957 2005-07-21  Chris Toshok  <toshok@ximian.com>
958
959         * HttpBrowserCapabilities.cs: enable support for the W3CDomVersion
960         and EcmaScriptVersion properties.
961
962 2005-07-21  Chris Toshok  <toshok@ximian.com>
963
964         * HttpResponseHeader.cs: hi, i'm stupid and missed String.Replace.
965         
966 2005-07-21  Chris Toshok  <toshok@ximian.com>
967
968         * HttpResponseHeader.cs: url encode just \r and \n if they're
969         present in the value.
970
971 2005-07-20  Chris Toshok  <toshok@ximian.com>
972
973         * HttpPostedFile.cs: add missing ContentLength property.
974
975 2005-07-20  Chris Toshok  <toshok@ximian.com>
976
977         * HttpCookieCollection.cs: add a new ctor that takes a string (the
978         contents of the Cookies: header).
979
980 2005-07-20  Chris Toshok  <toshok@ximian.com>
981
982         * HttpCookieCollection.cs: add another ctor (internal, but not
983         obsolete, so we aren't passing a stupid HttpResponse in in order
984         to change the behavior of the collection.)
985
986         * HttpCookie.cs: init this.values in the internal ctor.
987
988 2005-07-20  Chris Toshok  <toshok@ximian.com>
989
990         * HttpCookieCollection.cs: use "auto-fill mode" when we're dealing
991         with an HttpResponse's cookie collection.  That is, create the
992         cookie if the consumer looks it up.
993
994 2005-07-20  Miguel de Icaza  <miguel@novell.com>
995
996         * HttpApplication.cs: Ongoing work on pipeline, I will need to
997         redo this later.
998
999 2005-07-19  Miguel de Icaza  <miguel@novell.com>
1000
1001         * HttpContext.cs (GetService): Implement.  Return all of the
1002         properties that we have access to.  Make HttpWorkerRequest the
1003         first match as this is the only likely reason people need to use
1004         this. 
1005
1006         * IntPtrStream.cs: Bring from corlib.
1007
1008         * MultiPartContentParser.cs: use a MemoryStream as HttpInputStream
1009         will now be using IntPtrStream. 
1010
1011         * HttpRequest.cs (MakeInputStream): move code that loads the
1012         request here
1013         (CloseInputStream): Helper method that we will call later to
1014         ensure that we dispose properly the malloced() block. 
1015         (BinaryRead): Implemented.
1016
1017         * HttpInputStream.cs: Rewrite to be a descendant of
1018         IntPtrStream.cs 
1019
1020 2005-07-18  Miguel de Icaza  <miguel@novell.com>
1021
1022         * HttpApplication.cs (Modules): Add modules support and
1023         AsyncResult.
1024
1025 2005-07-18  Chris Toshok  <toshok@ximian.com>
1026
1027         * HttpResponseHeader.cs: initial implementation.
1028
1029 2005-07-18  Chris Toshok  <toshok@ximian.com>
1030
1031         * HttpModuleCollection.cs (HttpModuleCollection.GetKey): add
1032         missing method.
1033
1034         * HttpFileCollection.cs: initial implementation.
1035
1036 2005-07-18  Chris Toshok  <toshok@ximian.com>
1037
1038         * HttpModuleCollection.cs (HttpModuleCollection.CopyTo): implement
1039         missing method.
1040
1041 2005-07-18  Chris Toshok  <toshok@ximian.com>
1042
1043         * HttpModuleCollection.cs: initial implementation.
1044
1045 2005-07-18  Chris Toshok  <toshok@ximian.com>
1046
1047         * HttpCacheVaryByHeaders.cs: only add the header if it's not
1048         already in the hash.
1049
1050         * HttpCacheVaryByParams.cs: only add the param if it's not already
1051         in the hash.
1052
1053 2005-07-18  Chris Toshok  <toshok@ximian.com>
1054
1055         * HttpCookie.cs (HttpCookie+CookieNVC.Set): new override to fix an
1056         MS quirk.
1057
1058 2005-07-17  Miguel de Icaza  <miguel@novell.com>
1059
1060         * HttpRequest.cs (Headers, InputStream): implemented two more
1061         properties.
1062
1063         * HttpInputStream.cs: All we need is a MemoryStream with writable
1064         set to false.
1065
1066         * HttpPostedFile.cs: Use a Stream.
1067
1068 2005-07-16  Chris Toshok  <toshok@ximian.com>
1069
1070         * HttpCacheVaryByHeaders.cs: make sure we set vary_by_unspecified
1071         = false in the custom setter.
1072
1073 2005-07-16  Chris Toshok  <toshok@ximian.com>
1074
1075         * HttpCacheVaryByParams.cs: initial implementation.
1076
1077 2005-07-16  Chris Toshok  <toshok@ximian.com>
1078
1079         * HttpCacheVaryByHeaders.cs: initial implementation.
1080
1081 2005-07-15  Chris Toshok  <toshok@ximian.com>
1082
1083         * HttpCookie.cs: one more time.
1084
1085 2005-07-15  Chris Toshok  <toshok@ximian.com>
1086
1087         * HttpCookie.cs (HttpCookie.GetCookieHeader): use
1088         expires.ToString().
1089         
1090 2005-07-15  Chris Toshok  <toshok@ximian.com>
1091
1092         * HttpCookie.cs (HttpCookie.GetCookieHeader): implement to fix
1093         ben's bug.
1094
1095 2005-07-15  Chris Toshok  <toshok@ximian.com>
1096
1097         * HttpCookieCollection.cs: initial implementation (with a couple
1098         of labeled inefficiencies.)
1099
1100 2005-07-15  Chris Toshok  <toshok@ximian.com>
1101
1102         * HttpCookie.cs (HttpCookie.get_HasKeys): use values.HasKeys()
1103         instead of trying to be smart about it ourselves.
1104
1105 2005-07-15  Chris Toshok  <toshok@ximian.com>
1106
1107         * HttpCookie.cs: initial implementation.  we fail one unit test,
1108         but it might be due to a bug in NameValueCollection.
1109
1110 2005-07-15  Miguel de Icaza  <miguel@novell.com>
1111
1112         * HttpRequest.cs: 
1113
1114 2005-07-14  Miguel de Icaza  <miguel@novell.com>
1115
1116         * HttpRuntime.cs: Return a few of the values from the AppDomain
1117         data. 
1118
1119         Put the application shutdown process.
1120
1121         * HttpApplicationFactory.cs (AddEvent): Fixed bug when more than
1122         one method existed.
1123         
1124         (FireEvent): Do not ignore errors.
1125
1126         * HttpContext.cs (GetAppConfig, GetConfig): First success, use
1127         ConfigurationSettings.GetConfig to get the value that QueueManager
1128         needed.
1129
1130 2005-07-14  Dick Porter  <dick@ximian.com>
1131
1132         * HttpPostedFile.cs: New basic implementation; needs someone to
1133         figure out what a HttpRequestStream does
1134
1135 2005-07-13  Miguel de Icaza  <miguel@novell.com>
1136
1137         * HttpRequest.cs: More work on this file
1138
1139         * HttpRequest.cs, HttpApplication.cs, HttpContext.cs,
1140         HttpRuntime.cs: New from scratch implementation.
1141
1142 2005-07-01  Lluis Sanchez Gual <lluis@novell.com>
1143
1144         * SiteMap.cs: Read provider info from the configuration files.
1145
1146 2005-06-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1147
1148         * HttpResponseHeader.cs: URL encode \r and \n in header values. Fixes
1149         bug #75392.
1150
1151 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1152
1153         * HttpUtility.cs: fix another stupid buglet in htmldecode.
1154
1155 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1156
1157         * HttpContext.cs:
1158         * HttpResponse.cs:
1159         * HttpRequest.cs: use StrUtils (invariant culture).
1160
1161 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1162
1163         * HttpRequest.cs: use StartsWith when looking for 'multipart/form-data'.
1164         File uploading was broken since a few commits ago.
1165
1166 2005-06-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1167
1168         * HttpResponse.cs: ensure that the last chunk ('0\r\n\r\n') is sent
1169         even if response.Close is called before a final flush. MS/IIS fails to
1170         do this.
1171
1172 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1173
1174         * HttpRequest.cs: don't print anything for unknown content types in
1175         ParseFormData. Use lowercase compare.
1176
1177 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1178
1179         * HttpResponse.cs: invariant love.
1180
1181 2005-06-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1182
1183         * HttpResponse.cs: avoid 1 string concat.
1184         * HttpRequest.cs: fix BinaryRead. It was totally wrong.
1185
1186 2005-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1187
1188         * HttpUtility.cs: don't append an extra 0 when no digits seen. Fixes
1189         bug #75370.
1190
1191 2005-06-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1192
1193         * HttpUtility.cs: the lower limit for using &#xx; encoding is 160, not
1194         128. Reset number back to 0 after use. Fixes bug #75365.
1195
1196 2005-06-19  Svetlana Zholkovsky <svetlanaz-at-mainsoft.com>
1197                 * In following classes added TARGET_J2EE or/and TARGET_JVM
1198                   directives:
1199                         - HttpResponse.cs
1200                         - HttpRuntime.cs
1201                         - HttpUtility.cs
1202                         - CapabilitiesLoader.cs
1203                         - HttpApplication.cs
1204                         - HttpApplicationFactory.cs
1205                         - HttpContext.cs
1206                         - HttpException.cs
1207                         - HttpRequest.cs
1208                 * Added Mainsoft's specific files :
1209                         - GhHttpAsyncResult.jvm.cs
1210
1211 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1212
1213         * HttpRequest.cs: avoid one intermediate buffer when reading the request
1214         body and fail for over limit content length when the content type is
1215         not handled as form or multipart data.
1216
1217 2005-06-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1218
1219         * HttpResponse.cs: fix the check in Close() so that CloseConnection is
1220         called even if there has been no final Flush. Fixes bug #75176.
1221
1222 2005-06-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1223
1224         * HttpParseException.cs:
1225         * HttpResponse.cs:
1226         * HttpApplication.cs: updates for 1.1 service pack.
1227
1228 2005-06-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1229
1230         * HttpUtility.cs: fix InvalidCastException.
1231
1232 2005-06-05  Kornél Pál <kornelpal@hotmail.com>
1233
1234         * HttpWriter.cs: Fixed: _OutputFilter.Close () was called twice.
1235
1236 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1237
1238         * HttpUtility.cs: modified HtmlDecode so that it does not need to call
1239         Int32.Parse and handles improper &# sequences. Fixes bug #74907.
1240
1241 2005-05-26  Lluis Sanchez Gual <lluis@novell.com>
1242
1243         * SiteMapNodeCollection.cs: Implemented missing methods. The collection
1244         does not inherit from CollectionBase any more.
1245         * SiteMapNode.cs: Track api changes.
1246         * SiteMapProvider.cs: Moved several methods to the new
1247         StaticSiteMapProvider class. Other fixes.
1248         * XmlSiteMapProvider.cs: Watch changes in the xml files. Other fixes.
1249         * SiteMapProviderCollection.cs: Minor fixes.
1250         * SiteMap.cs: Added missing event. Avoid double check lock.
1251         * StaticSiteMapProvider.cs: New class that implements some of the
1252         funtionality of SiteMapProvider.
1253
1254 2005-05-25  Ben Maurer  <bmaurer@ximian.com>
1255
1256         * MimeTypes.cs: Remove extra spaces, they were typos. Fixes 75049.
1257
1258 2005-05-13 Atsushi Enomoto <atsishi@ximian.com>
1259
1260         * HttpUtility.cs : UrlDecodeToBytes() incorrectly decoded escaped 
1261           characters. Patch by Kazuki Oikawa.
1262
1263 2005-05-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1264
1265         * HttpRuntime.cs: PlatformID.Unix.
1266
1267 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1268
1269         * HttpResponse.cs: cleaned up the .ctors, fix IsClientConnected and just
1270         Clear the _Headers array instead of creating a new ArrayList in
1271         ClearHeaders().
1272
1273 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1274
1275         * HttpResponse.cs: we had 2 variables to track client connection status.
1276         Use only one. Increase the buffer size to 28KB when writing from a file.
1277
1278         * StaticFileHandler.cs: set the Content-Type before writing the file.
1279         This allows flushing before all the content is written.
1280
1281         * HttpApplication.cs: use the variable instead of the property when
1282         setting the Principal for the current process.
1283
1284 2005-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1285
1286         * ReusableMemoryStream.cs:
1287         * HttpWriter.cs: keep a pool of buffers to avoid allocations.
1288
1289 2005-05-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1290
1291         * HttpResponse.cs: no need to save/restore the thread culture when
1292         getting the Date header. According to Ben's profiling, this is a big
1293         deal in performance.
1294
1295         * HttpRuntime.cs: ignore exceptions that might be thrown when unloading 
1296         a domain.
1297
1298 2005-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1299
1300         * HttpApplicationFactory.cs: ignore any exception thrown when invoking
1301         an application event.
1302
1303 2005-04-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1304
1305         * HttpBrowserCapabilities.cs: fix Win32 property.
1306
1307 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1308
1309         * HttpResponse.cs: only add the charset when explicitly set or for
1310         well-known content types.
1311
1312 2005-04-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1313
1314         * HttpCachePolicy.cs:
1315         * HttpAsyncResult.cs:
1316         * HttpClientCertificate.cs:
1317         * HttpException.cs:
1318         * HttpRuntime.cs:
1319         * HttpCacheVaryByHeaders.cs:
1320         * HttpBrowserCapabilities.cs:
1321         * HttpUtility.cs:
1322         * HttpCacheVaryByParams.cs: no more warnings.
1323
1324         * QueueManager.cs: check for local connections with minLocalFreeThreads.
1325
1326 2005-04-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1327
1328         * ServerVariablesCollection.cs: shuffled variables, added missing ones
1329         and call a method in HttpRequest to set the HTTP_ variables.
1330
1331         * HttpRequest.cs: new method to add HTTP_ variables to a collection.
1332
1333 2005-04-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1334
1335         * HttpRequest.cs: GetAllHeaders was returning the value twice instead
1336         of 'name: value'. When HTTP_ is requested on the output, don't include
1337         unknown headers.
1338
1339 2005-03-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1340
1341         * HttpCookieCollection.cs: when adding more than one cookie with the
1342         same name, the last one is the winner.
1343
1344 2005-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1345
1346         * HttpRequest.cs: correctly store the value cookies in Params. Fixes
1347         bug #73345.
1348
1349 2005-02-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1350
1351         * HttpRequest.cs: Path and FilePath also change when RewritePath is
1352         called. Fixes bug #73055.
1353
1354 2005-02-23  Sebastien Pouliot  <sebastien@ximian.com>
1355
1356         * HttpRequest.cs: Make sure that any access after a ValidateInput 
1357         throws an exception if the data isn't safe.
1358
1359 2005-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1360
1361         * CapabilitiesLoader.cs: fix the path, as machine.config is now in a
1362         x.x/ directory below $PREFIX/etc/mono.
1363
1364 2005-02-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1365
1366         * HttpRequest.cs: fail on unicode full-width '<' and '>' too. Fixes
1367         a security report (http://secunia.com/advisories/14325) that wan't
1368         reported to us before public disclosure.
1369
1370 2005-02-18 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1371
1372         * HttpResponse.cs: send the calculated content length even when it's 0.
1373         Fixes bug #72655.
1374
1375 2005-02-04  Lluis Sanchez Gual <lluis@novell.com>
1376
1377         * HttpContext.cs: Added internal property to keep a reference to
1378         the last accessed page. Page uses this to implement PreviousPage.
1379
1380 2005-02-02  Lluis Sanchez Gual <lluis@novell.com>
1381
1382         * ProcessModelInfo.cs: Fixed warning.
1383
1384 2005-02-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1385
1386         * TraceContext.cs: writing a message without any other argument is not
1387         a warniing. Fixes bug #72017.
1388
1389 2005-01-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1390
1391         * HttpApplication.cs: if there are no more handlers, finish the
1392         request and ensure we call Complete on it. Now FreeTextBox 3.0 works.
1393
1394 2004-12-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1395
1396         * HttpRequest.cs: honor the maxRequestSize limit from machine.config.
1397
1398 2004-12-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1399
1400         * HttpApplication.cs: reread application CultureInfo as web.config
1401         might have changed. Fixes bug #62539.
1402
1403 2004-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1404
1405         * HttpResponse.cs: fixed ApplyAppPathModifier to insert the session ID.
1406
1407 2004-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1408
1409         * HttpApplicationFactory.cs: monitor changes in global.asax and bin
1410         directory and shutdown the application when that happens. Fixes bug
1411         #49651.
1412
1413 2004-11-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1414
1415         * ReusableMemoryStream.cs: copied from System.IO.MemoryStream and
1416         slightly modified to allow expanding the buffer for cases on which the
1417         regular MemoryStream don't allow it.
1418
1419         * HttpWriter.cs: use the new ReusableMemoryStream and fix bug #59841.
1420         Otherwise we would have to allocate a new MemoryStream...
1421
1422 2004-11-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1423
1424         * HttpApplication.cs: Create() is now GetInstance().
1425
1426 2004-11-18 Lluis Sanchez Gual <lluis@novell.com>
1427
1428         * SiteMapNodeCollection.cs: Added missing properties.
1429         * HttpParseException.cs: Added 2.0 methods and properties.
1430         * SiteMapNode.cs: Added missing methods and properties.
1431         * SiteMapProvider.cs, XmlSiteMapProvider.cs, 
1432         SiteMapProviderCollection.cs: IProvider does not exist any
1433         more, it is now ProviderBase.
1434         * ISiteMapProvider.cs: Deleted.
1435         * ParserErrorCollection.cs, ParserError.cs, SiteMapResolveEventArgs.cs:
1436           Implemented.
1437         * SiteMap.cs: Minor fixes.      
1438
1439 2004-11-15 Lluis Sanchez Gual <lluis@novell.com>
1440
1441         * SiteMapProviderCollection.cs: Fixed warning.
1442         * HttpApplication.cs: Added new 2.0 events.
1443
1444 2004-11-12 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1445
1446         * HttpResponse.cs: added internl SetHeadersSent.
1447         * HttpRuntime.cs: don't throw the 'headers already sent' exception
1448         if we're sending a runtime error.
1449
1450 2004-11-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1451
1452         * HttpApplication.cs: undo the TimeoutManager.(Add|Remove) shuffling.
1453         It causes troubles under heavy load.
1454
1455 2004-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1456
1457         * SiteMap.cs: don't lock on Type.
1458         * CapabilitiesLoader.cs: avoid 2 locks when loading data.
1459
1460 2004-11-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1461
1462         * HttpRequest.cs: patch by Dennis Gervalle that fixes PhysicalPath in
1463         presence of rewriting.
1464
1465 2004-10-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1466
1467         * HttpApplication.cs: don't hang if a sync step is aborted. Fixes the
1468         system.web portion of bug #68270.
1469
1470 2004-10-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1471
1472         * TraceContext.cs: don't cast to Page is the handler it's
1473         not a page.
1474
1475 2004-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1476
1477         * HttpRequest.cs: CurrentExecutionFilePath is the one that
1478         changes when Transfer or Execute are used, not FilePath.
1479
1480         * HttpServerUtility.cs: moved form saving/restoring from
1481         Transfer to Execute, as it's needed there too. the query string is
1482         correctly set now. Fixes bug #67388.
1483
1484         * HttpContext.cs: use SetCurrentExePath instead of SetFilePath.
1485
1486 2004-10-03 Ben Maurer  <bmaurer@ximian.com>
1487
1488         * HttpResponse.cs: use UtcNow
1489
1490 2004-10-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1491
1492         * HttpResponse.cs: SuppressContent does not throw and clears all the
1493         buffered output. Fixes bug #67213.
1494
1495 2004-09-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1496
1497         * HttpUtility.cs: UrlPathEncode is static. Fixes bug #67155.
1498
1499 2004-09-29 Ben Maurer  <bmaurer@ximian.com>
1500
1501         * HttpContext.cs, TimeoutManager: Use DateTime.UtcNow.
1502
1503 2004-09-25 Ben Maurer  <bmaurer@ximian.com>
1504
1505         * HttpApplication.cs: Make sure requests are removed from
1506         the timeout manager. Fixes a major leak. #66751.
1507
1508 2004-09-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1509
1510         * HttpApplicationFactory.cs:
1511         * HttpRuntime.cs: implemented UnloadAppDomain and be ready for domain
1512         unloading.
1513
1514 2004-09-12 Ben Maurer  <bmaurer@ximian.com>
1515
1516         * HttpContext.cs: use CallContext. It is a little bit faster.
1517
1518 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1519
1520         * HttpStaticObjectsCollection.cs: don't share static session objects
1521         declared in the application file across the application, but on a
1522         per-session basis. Fixes bug #65446.
1523
1524 2004-09-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1525
1526         * HttpServerUtility.cs: in Transfer(path), don't keep form data if
1527         the transfer is done from inside a page that received a postback.
1528         Fixes bug #65613.
1529
1530 2004-09-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1531
1532         * HttpValueCollection.cs: fixed signature of ToString (). Closes bug
1533         #65392.
1534
1535 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
1536
1537         * HttpWriter.cs (.ctor): Dont create teh StreamWriter twice
1538         (Clear): Don't recreate the MemoryStream and StreamWriter
1539
1540 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1541
1542         * HttpApplication.cs: only add/remove to/from the timeout
1543         manager when we're in a interruptible step.
1544
1545 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1546
1547         * TraceContext.cs: when IsEnabled has not been set, return the value
1548         from the TraceManager. Fixes bug #63469.
1549
1550 2004-08-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1551
1552         * HttpRuntime.cs: initialize the response writer when finishing a
1553         request because it cannot be queued. Under heavy load we made new
1554         requests be processed before the ones that might be queued. This is
1555         no longer the case.
1556
1557         * QueueManager.cs: instead of queueing/dequeuing separately, we now
1558         have a single method that does everything needed to decide which one
1559         will be the next request processed.
1560
1561 2004-08-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1562
1563         * HttpRuntime.cs: removed initializations to null in .cctor. Prevent
1564         other requests from avoiding the lock if they are received before the
1565         configuration system is inited. Ensure that the queue manager is not
1566         null before using it (it can be null while the first request is being
1567         processed).
1568
1569 2004-08-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1570
1571         * HttpServerUtility.cs: ensure we have a full virtual path for the
1572         request being executed.
1573
1574 2004-08-02  Duncan Mak  <duncan@ximian.com>
1575
1576         * ApplicationShutdownReason.cs: Fixed typos.
1577
1578         * HttpCookieMode.cs:
1579         * HttpDataTransferMode.cs:
1580         * HttpRequestPriority.cs: Added [Serializable] attribute.
1581         
1582 2004-08-02  Duncan Mak  <duncan@ximian.com>
1583
1584         * ApplicationShutdownReason.cs:
1585         * HttpCookieMode.cs:
1586         * HttpDataTransferMode.cs:
1587         * HttpRequestPriority.cs: Added 2.0 enumerations.
1588         
1589 2004-07-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1590
1591         * HttpApplication.cs: the file not found might be a dependency.
1592
1593 2004-07-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1594
1595         * HttpCookie.cs: use invariant when formatting expires date. Fixes bug
1596         #61690.
1597
1598 2004-07-07 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1599
1600         * HttpApplication.cs: don't keep the session around if we got it from
1601         the context. Fixes bug #61232.
1602
1603 2004-07-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1604
1605         * HttpUtility.cs: fixed stupid bug in UrlDecode from bytes. Closes bug
1606         #61181.
1607
1608 2004-07-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1609
1610         * TraceContext.cs: added internal HaveTrace property whose
1611         value is true when the page has a Trace attribute.
1612
1613 2004-06-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1614
1615         * TraceData.cs: fixed <br> output. Closes bug #60181.
1616
1617 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1618
1619         * HttpUtility.cs: check for control characters in the string to encode
1620         or decode and return the same string if there are none.
1621
1622 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1623
1624         * HttpApplication.cs: change/restore the IPrincipal in their own methods
1625         and make them internal.
1626
1627 2004-06-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1628
1629         * HttpContext.cs: reverting Pedro's patch and sending mail with test
1630         to mono-devel.
1631
1632 2004-06-09  Pedro Martnez Juli  <yoros@wanadoo.es>
1633
1634         * HttpContext: User property returns its own "user" value because
1635         the context can walk through different Threads. When "User" property
1636         is changed, change "Thread.CurrentPrincipal" too.
1637
1638 2004-06-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1639
1640         * HttpRequest.cs: removed extra ^Ms and fixed style of last patch.
1641
1642 2004-06-08  Alon Gazit  <along@mainsoft.com>
1643
1644         * HttpRequest.cs: Add a patch for HttpRequest.ServerVariables.
1645
1646 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
1647
1648         * HttpContext.cs: User property now get/set Thread.CurrentPrincipal.
1649         Fix (at least partially) #59683.
1650
1651 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1652
1653         * HttpRequest.cs: reverting patch from Alon Gazit. Uses the above file
1654         that doesn't compile.
1655
1656 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1657
1658         * TraceData.cs: fixes nullref in an application that relies on
1659         r ["Message"] not being null. Closes bug #59679.
1660
1661 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1662
1663         * HttpCachePolicy.cs: implemented SetAllowResponseInBrowserHistory.
1664
1665 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1666
1667         * HttpRuntime.cs: implemented a 5 simple properties that were TODOs.
1668
1669 2004-06-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1670
1671         * HttpBrowserCapabilities.cs: implemented ClrVersion and GetClrVersions.
1672         * HttpException.cs: removed MonoTODO.
1673
1674 2004-06-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1675
1676         * TraceContext.cs: don't check if HttpRuntime.TraceManager
1677         is enabled when writing.
1678
1679 2004-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1680
1681         * HttpRequest.cs: added ClientTarget internal property.
1682
1683 2004-06-03  Lluis Sanchez Gual <lluis@ximian.com>
1684
1685         * HttpApplication.cs: Clear the http handler list after releasing the
1686           handlers.
1687
1688 2004-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1689
1690         * TraceData.cs: html-encode the messages written to the trace. Fixes
1691         bug #59431.
1692
1693 2004-06-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1694
1695         * HttpWorkerRequest.cs: the hashtables are now case-insensitive. Thanks
1696         to Markus Krutner.
1697
1698 2004-05-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1699
1700         * HttpRequest.cs: nullify _sRequestRootVirtualDir and baseVirtualDir
1701         when SetFilePath is called. This way the cached values are reset and
1702         get the right value in case someone (namely SessionStateModule + 
1703         cookieless session) changes the FilePath after the property cached its
1704         value. Fixes bug #59364.
1705
1706 2004-05-27      Patrik Torstensson <totte@hiddenpeaks.com>
1707
1708         * HttpApplicationFactory.cs: Added SignalError (still todo)
1709
1710 2004-05-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1711
1712         * HttpResponse.cs: remove hardcoded "HTTP/1.0" version that kept
1713         chunked encoding disabled. Fixed chunked suffix and end. Send the
1714         'lastchunk' marked when in the final Flush even if the content length
1715         is 0. This makes mod-mono-server work fine with chunked encoding.
1716          
1717         * HttpRuntime.cs: Set the _firstRequest* variables to true
1718         earlier. TraceContext don't take any parameter now.
1719
1720         * TraceManager.cs: don't need a context. Use GetAppConfig.
1721
1722 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1723
1724         * HttpApplication.cs: set culture/uiculture from configuration and
1725         restore it after each step. Fixes bug #52851.
1726
1727 2004-05-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1728
1729         * HttpUtility.cs: use lower case in UrlEncode like MS does. Delay
1730         entities hashtable creation until it's really needed.
1731
1732 2004-05-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1733
1734         * HttpApplicationFactory.cs: if no module matches the name found for a
1735         possible event, ignore it. Fixes bug #58542.
1736
1737 2004-05-16      Patrik Torstensson <totte@hiddenpeaks.com>
1738
1739         * HttpRuntime (Init): Removed old todo
1740         * HttApplication : Implemented IHttpHandlerFactory recycling
1741         
1742 2004-04-28      Patrik Torstensson
1743
1744         * HttpApplicationState.cs: Performance, usage of ReaderWriter lock,
1745         removed MonoTodo
1746
1747 2004-04-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1748
1749         * HttpUtility.cs: return null in HtmlDecode for null input instead of
1750         throwing an exception. Patch by Jan Jaros (bug #57083).
1751
1752 2004-04-10  Vladimir Vukicevic  <vladimir@pobox.com>
1753
1754         * TimeoutManager.cs: Swap the order of initialization of contexts
1755         and the Timer, to avoid race condition of CheckTimeouts being called
1756         before contexts gets initialized.
1757
1758 2004-03-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1759
1760         * HttpRequestStream.cs: patch from Jan Jaros that fixes bug #56080.
1761         Now the posted file content does not have the boundaries and headers
1762         included.
1763
1764 2004-03-25  Alon Gazit <along@mainsoft.com>
1765
1766         * HttpRequest.cs: fix ValidateCookieCollection() to prevent
1767         InvalidCastException.
1768
1769 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1770
1771         * HttpValueCollection.cs: don't UrlDecode cookies. Fixes bug #55254.
1772
1773 2004-03-01  Larry Ewing  <lewing@ximian.com>
1774
1775         * HttpUtility.cs: fix UrlEncodeToBytes count check.
1776
1777 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1778
1779         * HttpServerUtility.cs:
1780         * HttpUtility.cs: added some checks for null. Fixed UrlPathEncode (bug
1781         #53670).
1782
1783 2004-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1784
1785         * HttpUtility.cs: fixed length check. Closes bug #54201.
1786         Thanks to Michal Moskal. Use MemoryStream instead of an ArrayList when
1787         decoding.
1788
1789 2004-02-11  Jackson Harper <jackson@ximian.com>
1790
1791         * TraceData.cs: Use ToString for cookie/header/var name values so
1792         null is handled properly.
1793         
1794 2004-02-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1795
1796         * HttpApplication.cs: ApplicationState is inited by the factory so,
1797         return that value in the property. when we use the context Session,
1798         cache it in the instance field.
1799
1800         * HttpApplicationFactory.cs: fixed target Type for the event when
1801         hooking application and module events. Initialize application
1802         and session scope objects. Fixes non-aplication events hook up.
1803
1804         * HttpStaticObjectsCollection.cs: added StaticItem and delay the
1805         creation of the objects until they are requested.
1806
1807 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1808
1809         * HttpApplicationFactory.cs: fixlet for session events hook.
1810
1811 2004-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1812
1813         * HttpApplicationFactory.cs: attach all events from Type and BaseType
1814         at the same time. Fixes bug #53454.
1815
1816 2004-01-27  Jackson Harper <jackson@ximian.com>
1817
1818         * HttpCachePolicy.cs: varybyparams::GetResponseHeader can return
1819         null now, dont hadd the header if it does.
1820         * HttpCacheVaryByParams.cs: Return null if there are no items.
1821
1822 2004-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1823
1824         * HttpCachePolicy.cs: it's not public.
1825         * HttpRuntime.cs: wait for requests before disposing the queue.
1826
1827 2004-01-15  Jackson Harper <jackson@ximian.com>
1828
1829         * HttpCachePolicy.cs: Fix typo causing varyby params headers to be
1830         created when they shouldn't be.
1831         
1832 2004-01-14  Jackson Harper <jackson@ximian.com>
1833
1834         * TraceData.cs: Fix some typos in the output text. Fix control
1835         position when adding controls recursively.
1836         
1837 2004-01-14  Jackson Harper <jackson@ximian.com>
1838
1839         * HttpCachePolicy.cs: Expose duration and sliding properties.
1840         
1841 2004-01-14  Jackson Harper <jackson@ximian.com>
1842
1843         * HttpCachePolicy.cs: Add an event that is fired when the
1844         cacheability is updated. The response uses this to determine
1845         whether or not it needs to cache itself.
1846         * HttpResponse.cs: When the cacheability is updated either create
1847         or dispose of the cached raw response based on whether or not we
1848         wil need it. This allows output caching to be controlled
1849         programatically.
1850         
1851 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1852
1853         * HttpContext.cs: add setter for ConfigTimeout.
1854         * HttpException.cs: added Description property and HTML encode some
1855         unescaped values.
1856
1857         * HttpRequest.cs: support request validation.
1858
1859         * HttpRequestValidationException.cs: added message and description.
1860
1861         * HttpServerUtility.cs: implemented ScriptTimeout.
1862
1863 2004-01-11  Jackson Harper <jackson@ximian.com>
1864
1865         * TraceManager.cs: Dont crash if there is no trace config element.
1866         
1867 2004-01-11  Jackson Harper <jackson@ximian.com>
1868
1869         * HttpRequest.cs: Add property for determining if the request is
1870         local or not.
1871         
1872 2004-01-10  Jackson Harper <jackson@ximian.com>
1873
1874         * TraceContext.cs: Handle tracing when it is enabled in the config
1875         file but not on the page.
1876         * TraceManager.cs: Get settings from the configuration object.
1877         * HttpRuntime.cs: Create trace manager in the first request start
1878         so it can get configuration settings.
1879         
1880 2004-01-10  Jackson Harper <jackson@ximian.com>
1881
1882         * TraceContext.cs: Save the request path in the trace data.
1883         * TraceData.cs: Add RequestPath property, make some rendering
1884         methods internal static so the TraceHandler can use them.
1885         * TraceManager.cs: Expose trace data, add a method for clearing
1886         trace data.
1887         
1888 2004-01-10  Jackson Harper <jackson@ximian.com>
1889
1890         * HttpRuntime.cs: Add trace manager
1891         * TraceManager.cs: New class for handling trace configuration and
1892         storing trace data objects.
1893         * TraceContext.cs: Save trace data to the trace manager. Fix typo.
1894         
1895 2004-01-10  Jackson Harper <jackson@ximian.com>
1896
1897         * TraceData.cs: New class for storing trace data. Data is stored
1898         here instead of the trace context so it can be saved and accessed
1899         from the trace handler.
1900         * TraceContext.cs: Save data in the TraceData object, let the
1901         trace data object handle the rendering.
1902         
1903 2004-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1904
1905         * HttpRequest.cs: use ContentEncoding for QueryString. Fixes bug #52577.
1906         Thanks to Jan Jaros (mono-bug@jerryweb.info).
1907
1908         * HttpRequestValidationException.cs: fix comment.
1909
1910 2004-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1911
1912         * HttpException.cs: default to error 500. Fixes bug #52623.
1913
1914 2004-01-04  Jackson Harper <jackson@ximian.com>
1915
1916         * TraceContext.cs: Store and render trace info times. Also render
1917         cookie sizes. Remove debug code.
1918         
1919 2004-01-04  Jackson Harper <jackson@ximian.com>
1920
1921         * HttpResponse.cs: Set the cached response date header so it can
1922         be updated.
1923         * HttpResponseHeader.cs: Let values be set so we can update cached 
1924         response header values.
1925         
1926 2004-01-04  Jackson Harper <jackson@ximian.com>
1927
1928         * HttpResponse.cs: Implement RemoveOutputCacheItem.
1929         
1930 2004-01-04  Jackson Harper <jackson@ximian.com>
1931
1932         * HttpCachePolicy.cs: Add internal method to get the vary by custom string
1933         * HttpCacheVaryByHeaders.cs: Add internal method to get the header names.
1934         
1935 2004-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1936
1937         * HttpRuntime.cs: implemented MachineConfigurationDirectory,
1938
1939 2004-1-1  Alon Gazit <along@mainsoft.com>
1940         * HttpWriter.cs: add check in Write() in order to prevent
1941         NullReferenceException.
1942
1943 2004-1-1  Alon Gazit <along@mainsoft.com>
1944         * HttpResponse.cs: implemented ExpiresAbsolute and Expires.
1945
1946 2003-12-18  Jackson Harper <jackson@ximian.com>
1947
1948         * TraceContext.cs: Write () methods are not warnings.
1949         
1950 2003-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1951
1952         * HttpBrowserCapabilities.cs: added GetClrVersions ().
1953         * HttpCachePolicy.cs: added SetAllowResponseInBrowserHistory ().
1954         * HttpContext.cs: added set_Current and RewritePath (s, s, s) for 1.1.
1955         * HttpRequest.cs: added set_ContentType, SetPathInfo and ValidateInput.
1956         * HttpRequestValidationException.cs: new class for 1.1
1957         * HttpResponse.cs: added RedirectLocation.
1958         * HttpRuntime.cs: added UnloadAppDomain.
1959         * HttpServerUtility.cs: Execute (s, t, b) is internal for < 1.2
1960         * HttpUtility.cs: copied UrlPathEncode from HttpServerUtility.
1961         * HttpWorkerRequest.cs: added [ComVisible] and made the ctor public.
1962
1963 2003-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1964
1965         * HttpContext.cs: implemented IsCustomErrorEnabled and
1966         IsDebuggingEnabled. Added internal ErrorPage property.
1967
1968         * HttpRuntime.cs: on error, check if we have a custom error page enabled
1969         to handle it and redirect.
1970
1971         * HttpResponse.cs: added RedirectCustomError (), which actually does
1972         the redirection to the error page.
1973         
1974 2003-12-16  Jackson Harper <jackson@ximian.com>
1975
1976         * TraceContext.cs: Render all the data, and the stylesheet.
1977         
1978 2003-12-16  Jackson Harper <jackson@ximian.com>
1979
1980         * TraceContext.cs: Add incomplete render method.
1981         
1982 2003-12-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1983
1984         * CapabilitiesLoader.cs: loads browser detection and capabilities data
1985         from browscap.ini file by Gary J. Keith.
1986
1987         * HttpBrowserCapabilities.cs: removed almost all TODOs.
1988
1989         * HttpRequest.cs: fixed Browser property.
1990
1991 2003-12-15  Jackson Harper <jackson@ximian.com>
1992
1993         * TraceContext.cs: Initial implementation of storing data.
1994         * HttpContext.cs: Create and expose a trace object.
1995         
1996 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1997
1998         * HttpApplication.cs: ThreadAbortException is ok on Redirect.
1999         * HttpContext.cs: added TimeoutPossible property.
2000         * HttpResponse.cs: throw ThreadAbortException if End () is called within
2001         a step in which is possible to timeout.
2002
2003         Fixes bug #51703.
2004
2005 2003-12-04  Jackson Harper <jackson@ximian.com>
2006
2007         * HttpRequest.cs: Cleanup method.
2008         
2009 2003-12-04  Jackson Harper <jackson@ximian.com>
2010
2011         * HttpValueCollection.cs: Allow blank value names. Posting
2012         <blank>=SomeValue is valid. And occurs if a radio button does
2013         not have its name set.
2014         
2015 2003-12-03  Jackson Harper <jackson@ximian.com>
2016
2017         * HttpResponse.cs: Actually apply an app path modifier in
2018         ApplyAppPathModifer and add a method to set the app path modifier.
2019         * HttpRequest.cs: Add utility method for setting a request header.
2020         
2021 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2022
2023         * HttpApplication.cs: handle FileNotFound and DirectoryNotFound
2024         exceptions when creating the handler to generate a better error page.
2025
2026         * HttpException.cs: display the http_code if available.  Changed all
2027         \n by \r\n to make the hidden stack trace readable.
2028         
2029         * StaticFileHandler.cs: don't send the real path in th eerror.
2030
2031 2003-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2032
2033         * HttpContext.cs: updated GetConfig and GetAppConfig to new API.
2034         
2035         * HttpResponse.cs: separate initialization of the HttpWriter, as it
2036         tries to read configuration settings while the config. system is not
2037         available (ie, before the first request).
2038         
2039         * HttpRuntime.cs: delayed queueManager and response writer
2040         initialization until the configuration system is working.
2041
2042 2003-11-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2043
2044         * HttpRuntime.cs: added request queue handling.
2045
2046         * QueueManager.cs: simple request queue.
2047         
2048         * TimeoutManager.cs: added some locks to prevent the enumerator used in
2049         CheckTimeouts to be out of synch.
2050
2051 2003-11-25  Jackson Harper <jackson@ximian.com>
2052
2053         * HttpStaticObjectsCollection.cs: Add methods for serialization
2054         and conversion to/from byte arrays.
2055         
2056 2003-11-21  Jackson Harper <jackson@ximian.com>
2057
2058         * HttpResponse.cs: When caching data set the content length in the
2059         cached repsonse so that only that amount will be written back to
2060         the client. Add method to write a range of binary data.
2061         * HttpCacheVaryByParams.cs: Add method to retrieve param names.
2062         
2063 2003-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2064
2065         * HttpApplication.cs:
2066         * HttpContext.cs:
2067         * HttpRuntime.cs: add timeout handling.
2068         * TimeoutManager.cs: new class that takes care of aborting threads on
2069         timeout.
2070
2071 2003-11-19  Jackson Harper <jackson@ximian.com>
2072
2073         * HttpWriter.cs: Use a constant for the buffer size so the cache
2074         can get the buffer size. Add method to get the buffer.
2075         * HttpResponse.cs: Methods for getting data to cache, and setting
2076         vars from the cache.
2077         * HttpCachePolicy.cs: Expose a pages cache expire time.
2078         
2079 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2080
2081         * HttpResponse.cs: 
2082         * HttpWriter.cs: some fixes to allow closing a response stream without
2083         messing the rest.
2084
2085 2003-11-13  Jackson Harper  <jackson@ximian.com>
2086
2087         * HttpCachePolicy.cs: Make sure cacheability and maxage get
2088         set. Add method to set Http response header data
2089         * HttpCacheVaryByParams.cs: Add method to create a response header.
2090         * HttpCacheability.cs: Add ServerAndPrivate and ServerAndNoCache.
2091         * HttpResponse.cs: Set cache headers.
2092         
2093 2003-11-11 Ben Maurer  <bmaurer@users.sourceforge.net>
2094
2095         * HttpModuleCollection.cs (GetKey): Recursion, again!
2096
2097 2003-11-11 Ben Maurer  <bmaurer@users.sourceforge.net>
2098
2099         * HttpClientCertificate.cs (ValidUntil): recursion!
2100
2101 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
2102
2103         * SiteMapNode.cs (GetDataSourceView): Implement.
2104         * SiteMapProvider.cs: Typo fixing.
2105         * XmlSiteMapProvider.cs: We shouldnt resolve here.
2106         
2107 2003-11-08 Ben Maurer  <bmaurer@users.sourceforge.net>
2108
2109         * SiteMap.cs (Init): implement a hack that doesnt need the config
2110         stuff. Should do that later.
2111         * SiteMapNodeCollection (OnValidate): Fix recursion.
2112         * SiteMapProvider.cs: We dont implement some culture stuff work
2113         around it. Fix typo.
2114         * XmlSiteMapProvider.cs: Added.
2115         
2116 2003-11-07 Ben Maurer  <bmaurer@users.sourceforge.net>
2117
2118         * ISiteMapProvider.cs:
2119         * SiteMap.cs:
2120         * SiteMapNode.cs:
2121         * SiteMapNodeCollection.cs:
2122         * SiteMapProvider.cs:
2123         * SiteMapProviderCollection.cs: V2 sitemap related stuff.
2124
2125 2003-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2126
2127         * HttpRequest.cs: don't attempt to read more bytes than specified
2128         content length.
2129
2130 2003-11-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2131
2132         * HttpRequest.cs:
2133         * HttpResponse.cs:
2134         * HttpUtility.cs:
2135         * HttpValueCollection.cs: encoding fixes/updates.
2136
2137         * HttpWriter.cs: when updating the encoding, flush the existing stream.
2138         Encoding updates.
2139
2140 2003-11-04 Ben Maurer  <bmaurer@users.sourceforge.net>
2141
2142         * HttpContext.cs (IsCustomErrorEnabled): dont throw exception, just
2143         return false (which makes sense, as the custom errors *arent* enabled;
2144         ie they dont work.
2145         * HttpResponseStream.cs: you actually can write with len = 0
2146
2147 2003-11-03 Jackson Harper <jackson@ximian.com>
2148
2149         * HttpResponse.cs (ContentEncoding): Throw
2150         ArgumentNullException. Patch by Yaron Shkop.
2151         
2152 2003-10-30  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
2153
2154         * HttpMultipartContentParser.cs : Quick fix for cygwin build. 
2155           CSC complains that constant char cannot be casted as byte.
2156
2157 2003-10-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2158
2159         * HttpApplication.cs: added AssemblyLocation property.
2160
2161 2003-10-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2162
2163         * HttpApplicationFactory.cs: use NoParamsInvoker.
2164         * HttpRequest.cs: support request filters.
2165         * HttpRequestStream.cs: mono-stylized and added new Set method.
2166
2167         * NoParamsInvoker.cs: proxy class to invoke user-provided methods
2168         without parameters that are invoked by EventHandlers.
2169
2170 2003-10-13  Lluis Sanchez Gual <lluis@ximian.com>
2171
2172         * HttpResponse.cs: Changed harcoded switch to en-US culture to a switch
2173           to invariant culture.
2174
2175 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2176
2177         * HttpResponse.cs:
2178         * HttpServerUtility.cs: change the response writer in Execute. Thanks
2179         to Rich Alimi <rich@velvetsea.net> for noticing this.
2180
2181 2003-10-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2182
2183         * HttpApplicationFactory.cs: support for wiring up events without
2184         parameters.
2185
2186 2003-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2187
2188         * HttpUtility.cs: small memory usage reduction.
2189
2190 2003-10-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2191
2192         * HttpApplication.cs: pass the Uri, not the file path to
2193         when looking for a handler.
2194
2195 2003-09-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2196
2197         * HttpRequest.cs: small fix needed when reading big POST data.
2198
2199 2003-09-04  Lluis Sanchez Gual <lluis@ximian.com>
2200
2201         * HttpRequest.cs: Url property: use GetLocalAddress() to get the address
2202           (this will get the address from the request headers).
2203
2204 2003-09-04  Lluis Sanchez Gual <lluis@ximian.com>
2205
2206         * HttpServerUtility.cs: In Transfer(), preserve the query string if
2207           told to do so.
2208
2209 2003-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2210
2211         * HttpApplication.cs: ensure we do all the EndRequest steps. Don't
2212         filter the output on error.
2213         
2214         * HttpResponse.cs: modified DoFilter to allow bypassing filtering.
2215
2216 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2217
2218         * HttpApplication.cs: when the request is completed or an
2219         error happens, execute all the delegates attached to EndRequest, not
2220         only the last one. This makes xsp/test/authtest work again.
2221         
2222         * HttpMethodNotAllowedHandler.cs: fixed description for http
2223         status code.
2224
2225 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2226
2227         * HttpRequest.cs: quick way of checking that the path is within the
2228         root for the application. Thanks to Johannes for reporting.
2229         
2230         * HttpRuntime.cs: use the status code from teh exception when it'ss a
2231         HttpException.
2232
2233         * StaticFileHandler.cs: forbidden is 403.
2234
2235 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2236
2237         * HttpServerUtility.cs: fixed path and query. Path by Rich Alimi
2238         <rich@velvetsea.net>.
2239
2240 2003-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2241
2242         * HttpException.cs: make the unhandled error more like the MS one.
2243         * HttpRuntime.cs: set a 500 error code on unhandled exceptions.
2244
2245 2003-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2246
2247         * HttpResponse.cs: flush headers when the body length is 0.
2248         * StaticFileHandler.cs: added If-Modified-Since handling patch slightly
2249         modified from the original by Piers Haken <piersh@friskit.com>.
2250
2251 2003-08-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2252
2253         * HttpResponse.cs: another patch from totte and me. This one prevents
2254         writing output if the client have disconnected and filters the data
2255         when there's a non-final Flush in the middle of the process.
2256
2257 2003-08-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2258
2259         * HttpApplication.cs: fixed typos. Closes bug #44197.
2260
2261 2003-08-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2262
2263         * HttpApplication.cs:
2264         * HttpApplicationFactory.cs: fix duplicate application OnStart events.
2265
2266         Patch by Patrik Torstensson.
2267
2268 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2269
2270         * HttpApplicationFactory.cs: use the correct Delegate.CreateDelegate
2271         overload. The previous one only admits static methods.
2272
2273 2003-08-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2274
2275         * ProcessModelInfo.cs: Fixed signature
2276
2277 2003-07-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
2278
2279         * WebCategoryAttribute.cs: Implemented localization
2280         * WebSysDescriptionAttribute.cs: Implemented localization
2281
2282 2003-07-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2283
2284         * HttpRuntime.cs: also clear the headers that may have been set upon
2285         error processing the request.
2286
2287 2003-07-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2288
2289         * HttpResponseStreamProxy.cs: reformatted. Fixed infinite recursion in
2290         Write method.
2291
2292         * HttpWriter.cs: flush the filter after writing.
2293
2294 2003-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2295
2296         * HttpWriter.cs: avoid duplicating the MemoryStream byte buffer.
2297
2298 2003-07-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2299
2300         * HttpContext.cs: Session doesn't have a setter.
2301
2302         * HttpResponse.cs: Request is private.
2303
2304 2003-07-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2305
2306         * HttpRequest.cs: fixed Headers property. It was getting known headers
2307         values instead of known headers names.
2308
2309 2003-07-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2310
2311         * HttpApplication.cs: prevent nullref if an error happens before context
2312         is set.
2313         * HttpException.cs: small fix in the stack trace sent.
2314         * HttpUtility.cs: the lock is not needed.
2315
2316 2003-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2317
2318         * HttpRequest.cs: added REMOTE_PORT.
2319         * HttpValueCollection.cs: fixed bug #45490.
2320
2321 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2322
2323         * HttpApplication.cs:
2324         * HttpApplicationFactory.cs: fire application start and session
2325         start/end events.
2326
2327 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2328
2329         * HttpException.cs: encode as HTML the inner exception that
2330         is appended as a comment at the end of error pages.
2331
2332 2003-05-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2333
2334         * HttpWriter.cs: don't do anything in Flush. Fixes #42249.
2335
2336 2003-05-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2337
2338         * HtmlizedException.cs: added more virtual methods.
2339
2340         * HttpException.cs:  some work on the output when there's a source
2341         file present.
2342
2343 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2344
2345         * HtmlizedException.cs: simplified to cope with the new interface.
2346
2347         * HttpApplicationFactory.cs: use the application file parser to get the 
2348         application Type.
2349         
2350         * HttpException.cs: small changes. Needs some more work on
2351         ParseExceptions.
2352         
2353 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2354
2355         * HttpRequest.cs: fixed Url property.
2356
2357 2003-03-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2358
2359         * HtmlizedException.cs:
2360         * HttpException.cs: display the correct line number in error messages.
2361
2362 2003-03-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2363
2364         * HttpCachePolicy.cs: implemented all TODOs.
2365         * HttpRequestStream.cs: make it internal.
2366
2367 2003-03-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2368
2369         * HttpContext.cs: implemented RewritePath in other way.
2370         * HttpRequest.cs: removed SetPhysicalPath and added SetForm.
2371         * HttpServerUtility.cs: implemented Transfer (string, bool).
2372
2373 2003-03-16  Daniel Lopez Ridruejo <daniel @ rawbyte.com>
2374         * HttpContext.cs : Implemented RewritePath
2375         * HttpRequest.cs : Added internal function SetPhysicalPath
2376
2377 2003-03-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2378
2379         * HttpServerUtility.cs: implemented Transfer ().
2380
2381 2003-03-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2382
2383         * HttpRuntime.cs: Cache no longer have a Dispose method.
2384
2385         * HttpServerUtility.cs: removed MonoTODO.
2386
2387 2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2388
2389         * HttpHelper.cs: store the values in an ArrayList to get them in correct
2390         order.
2391
2392 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2393
2394         * HttpApplicationFactory.cs: Global.asax takes precedence over
2395         global.asax if it exists.
2396
2397         * HttpRequest.cs: use allowCrossAppMapping in MapPath.
2398
2399 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2400
2401         * HttpApplication.cs: CreateHttpHandler is now internal.
2402
2403         * HttpRequest.cs: allow setting QueryStringRaw, which
2404         invalidates the data obtained from the previous value. Added internal
2405         SetFilePath method.
2406
2407         * HttpServerUtility.cs: implemented Execute and GetLastError.
2408
2409 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2410
2411         * HttpServerUtility.cs: style.
2412
2413 2003-02-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2414
2415         * HttpApplication.cs: only execute the EndRequest step on error
2416         condition or request marked as completed. This prevent page events from
2417         being called when, for example, the url authorization module forbids
2418         the request.
2419
2420 2003-02-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2421
2422         * HttpRequest.cs: implemented the indexer.
2423
2424 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2425
2426         * HtmlizedException.cs: base class for exceptions that makes it easy to
2427         generate error pages.
2428
2429         * HttpException.cs: improved error displaying.
2430
2431         * HttpRuntime.cs: removed debugging output.
2432
2433 2003-02-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2434
2435         * HttpApplication.cs: display the error instead of hanging when we get
2436         any error before the last step of the request.
2437
2438 2003-02-04  Tim Haynes <thaynes@openlinksw.com>
2439
2440         * HttpApplicationFactory.cs: fixed HttpRuntime.Close() to decrement
2441         instance counter.
2442
2443 2003-01-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2444
2445         * HttpRequest.cs: added BaseVirtualDir property and use it in MapPath.
2446
2447 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2448
2449         * HttpRequest.cs: implemented CurrentExecutionFilePath.
2450
2451 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2452
2453         * HttpApplication.cs: keep _lasterror if no context. Attach
2454         application events *after* modules initialization (if not, User is not
2455         set when the user handler is called).
2456         
2457         * HttpApplicationFactory.cs: made all methods related to
2458         AttachEvents static. I will fix OnStart/OnEnd for application and
2459         session later.
2460         
2461         * HttpRequest.cs: don't initialize cookies twice.
2462
2463 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2464
2465         * HttpResponse.cs:
2466         (ApplyAppPathModifiers): return the root directory for "".
2467
2468 2003-01-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2469
2470         * HttpUtility.cs: fixed HtmlDecode to avoid ArgumentOutOfRangeException.
2471
2472 2003-01-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2473
2474         * HttpApplication.cs: added new state to handle default authentication.
2475
2476 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2477
2478         * HttpContext.cs: removed hack to get the User.
2479
2480 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2481
2482         * HttpUtility.cs: fixed bug #36038. Thanks to juancri@tagnet.org for
2483         reporting the bug and how to fix it.
2484
2485 2002-12-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2486
2487         * HttpCookie.cs: send 'expires' in the header.
2488
2489 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2490
2491         * HttpValueCollection.cs: patch from Botjan Vizin 
2492         <bostjan.vizin@siol.net> that implements ToString (bool).
2493
2494 2002-12-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2495
2496         * HttpApplicationFactory.cs: add the context as parameter when building
2497         the application Type.
2498         
2499         * HttpCookie.cs: new internal constructor.
2500         * HttpCookieCollection.cs: new internal method to make a cookie expire.
2501
2502         * HttpRequest.cs: MapPath fixes.
2503         * HttpResponse.cs: implemented ApplyAppPathModifier.
2504         * HttpRuntime.cs: fixed typo in AppDomainAppVirtualPath.
2505
2506 2002-12-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2507
2508         * HttpContext.cs: hack to create a default user when there's no one.
2509         Implemented GetConfig (string).
2510
2511         * HttpRequest.cs: fixes to MapPath (string).
2512
2513 2002-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2514
2515         * HttpRuntime.cs: avoid nulls and exception when getting resource
2516         format strings.
2517
2518         * StaticFileHandler.cs: added file name to error message.
2519
2520 2002-12-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2521
2522         * HttpResponse.cs: avoid sending chunked content for HTTP/1.1.
2523
2524 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2525
2526         * HttpApplicationFactory.cs: get the events from the application class,
2527         fire Application/Session Start/End and add the others as application
2528         events.
2529
2530 2002-11-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2531
2532         * HttpApplicationFactory.cs: compile global.asax file if it exists.
2533
2534 2002-11-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2535
2536         * HttpRequest.cs: provide a default Browser until we detect it.
2537         * HttpResponse.cs:
2538         (End): do not close the connection here.
2539         (Flush (bool)): send the headers when, for example, Redirect () is
2540         called.
2541
2542 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2543
2544         * HttpException.cs: simple error output.
2545
2546 2002-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2547
2548         * HttpApplication.cs: style.
2549         * HttpException.cs: style.
2550         * HttpRuntime.cs: only flush the response if there are no errors.
2551         Otherwise, write an error output.
2552         * HttpWriter.cs: change Unicode to UTF8.
2553
2554 2002-11-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2555
2556         * HttpApplication.cs: don't begin the request using ExecuteNextAsync
2557         (it fails to work on NetServ).
2558
2559         * HttpWorkerRequest.cs: typo.
2560
2561 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2562
2563         * HttpValueCollection.cs: the value may contain trailing '=' as it is
2564         UrlEncoded. Don't split name=value based on '='.
2565
2566 2002-11-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2567
2568         * HttpCookie.cs: made GetCookieHeader internal.
2569
2570         * HttpRequest.cs: get cookies from request.
2571
2572         * HttpResponse.cs: send cookies. Implemented
2573         AddFileDependencies (). Added check for _Writer == null in Flush
2574         (Patrik ;-). Clear the content if HEAD or SupressContent == true.
2575         Removed redirect hack used in old server.
2576
2577 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2578
2579         * HttpRequest.cs: fixed GetRawContent (). Now it only tries to read at
2580         most ContentLength bytes.
2581
2582         * HttpResponse.cs: now it sends the headers. Added
2583         X-Powered-By header :-).
2584
2585         * HttpRuntime.cs: fixed typo.
2586
2587         * HttpValueCollection.cs: cosmetic changes.
2588
2589 2002-10-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2590
2591         * HttpApplication.cs: reenabled a few lines of code
2592         (ThreadPool already fixed). 
2593         
2594         * HttpRequest.cs:
2595         * HttpResponse.cs:
2596         * HttpUtility.cs:
2597         * HttpValueCollection.cs:
2598         * HttpWriter.cs: Use WebEncoding.Encoding.
2599
2600 2002-10-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2601
2602         * HttpWriter.cs: changed encoding of the writer from Unicode to UTF8.
2603         This fixes sending bytes and allows mixing byte with chars.
2604
2605 2002-10-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2606
2607         * HttpResponse.cs: implemented WriteFile methods.
2608         * MimeTypes.cs: removed duplicated entries.
2609
2610 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2611
2612         * HttpResponse.cs: don't throw exception in a couple of
2613         methods not yet implemented.
2614
2615 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2616
2617         * HttpApplication.cs: fixed type and handle factories when creating
2618         IHttpHandler for a request.
2619
2620 2002-10-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2621
2622         * HttpApplication.cs: use handlers from configuration.
2623         * HttpContext.cs: get handlers from ConfigurationSettings.
2624
2625 2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2626
2627         * HttpMethodNotAllowedHandler.cs:
2628         * HttpRuntime.cs:
2629         * StaticFileHandler.cs: Modified file.
2630
2631         * HttpUtility.cs: implemented all missing methods.
2632
2633
2634 2002-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2635
2636         * System.Web/HttpApplication.cs: use the static file handler.
2637         * System.Web/HttpForbiddenHandler.cs: handler to forbid access.
2638         * System.Web/HttpMethodNotAllowedHandler.cs: handler for method not
2639         allowed.
2640         
2641         * System.Web/HttpUtility.cs: finished all UrlDecode methods.
2642         * System.Web/MimeTypes.cs: map from file extension to MIME type.
2643         * System.Web/StaticFileHandler.cs: serves static files
2644
2645 2002-09-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2646
2647         * System.Web/HttpApplication.cs:
2648         * System.Web/HttpApplicationFactory.cs:
2649         * System.Web/HttpRequest.cs:
2650         * System.Web/HttpRuntime.cs: we are now able to compile pages and use
2651         HttpApplication, HttpRuntime and SimpleWorkerRequest.
2652
2653 2002-09-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2654
2655         * HttpApplication.cs: added some missing methods.
2656         * HttpApplicationFactory.cs: get event handlers for the application.
2657         * HttpAsyncResult.cs: little fixes.
2658         * HttpRequest.cs: make Encoding work even with no worker request.
2659
2660 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2661
2662         * HttpWorkerRequest.cs: mcs doesn't go crazy. It's just me, that forgot
2663         to add HttpMapPath to the list file...
2664
2665 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2666
2667         * HttpWorkerRequest.cs: fixes compilation with mcs. I will add a bug
2668         report when i get a test case.
2669
2670 2002-08-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2671
2672         * HttpApplicationFactory.cs:
2673         * HttpCachePolicy.cs:
2674         * HttpResponseHeader.cs:
2675         * HttpResponseStream.cs:
2676         * HttpResponseStreamProxy.cs:
2677         * HttpValueCollection.cs: misc. fixes based on class status page.
2678
2679         * IHttpMapPath.cs: New file.
2680
2681         * HttpRequest.cs: implemented ContentEncoding.
2682         * HttpWorkerRequest.cs: mono-stylized and implemented
2683         SendResponseFromMemory.
2684
2685 2002-08-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2686
2687         * HttpContext.cs: reformatted.
2688         * HttpStaticObjectsCollection.cs: implemented GetEnumertor, CopyTo and
2689         the indexer.
2690
2691 2002-08-05  Patrik Torstensson <ptorsten@hotmail.com>
2692
2693         * HttpApplication.cs: Implemented a state machine to allow handling of
2694         HttpModules and HttpHandlers. Implementation of async handlers. 
2695                                                                  
2696         * HttpApplicationFactory.cs: Factory for creating HttpApplication
2697         instances, including caching.
2698         
2699         * HttpRuntime.cs: Usage of the new HttpApplicationFactory to get a
2700         application instance to execute requests in and implementation of 
2701         request execution (still no request queue). 
2702                                                          
2703         * HttpAsyncResult.cs: New file to handle async module results.                                          
2704                                                          
2705         * HttpRequest.cs: Change signature of Dispose
2706         * HttpResponse.cs: new internal method allowing filtering to happen
2707         during the request flow in the state machine.
2708
2709 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2710
2711         * HttpApplication.cs: events were not being initialized.
2712
2713 2002-07-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2714
2715         * ProcessModelInfo.cs: fixed compilation.
2716
2717 2002-07-25  Tim Coleman <tim@timcoleman.com>
2718         * ProcessModelInfo.cs:
2719                 New class added
2720         * HttpParseException.cs:
2721         * HttpCompileException.cs:
2722         * HttpUnhandledException.cs:
2723                 Internal constructors added to these
2724
2725 2002-07-24  Tim Coleman <tim@timcoleman.com>
2726         * ProcessInfo.cs: 
2727                 Fix constructor, reference to shutdownreason.
2728
2729 2002-07-24  Tim Coleman <tim@timcoleman.com>
2730         * HttpCachePolicy.cs:
2731                 Added stubbs to this class.
2732         * HttpCacheability.cs:
2733         * HttpCacheRevalidation.cs:
2734         * HttpValidationStatus.cs:
2735         * ProcessShutdownReason.cs:
2736         * ProcessStatus.cs:
2737         * TraceMode.cs:
2738                 Reorder the enumerations (and in some cases make
2739                 one-based) in order to agree with the .NET 
2740                 implementation, based on the class status page.
2741         * ProcessInfo.cs:
2742                 Implementation of this class.
2743
2744 2002-07-23  Tim Coleman <tim@timcoleman.com>
2745         * HttpCompileException.cs:
2746         * HttpParseException.cs:
2747         * HttpUnhandledException.cs:
2748                 New stubbs created.
2749         * HttpApplication.cs:
2750         * HttpBrowserCapabilities.cs:
2751                 Added missing methods stubbs and attributes based
2752                 on the class status page.  Also reformatted some
2753                 source for consistency.
2754
2755 2002-07-23  Tim Coleman <tim@timcoleman.com>
2756         * HttpUtility.cs: Moved entities hashtable into main
2757                 class as a static object, so we don't instantiate
2758                 a new one every time.  Also put the hashtable
2759                 building into a lock block.
2760
2761 2002-07-22  Tim Coleman <tim@timcoleman.com>
2762         * HttpUtility.cs: Cleanup of the code, implementation
2763                 of HtmlDecode/HtmlEncode functions
2764
2765 2002-07-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2766
2767         * HttpResponse.cs: quick&dirty hack to make redirection work. Should
2768         be out of there once we have SimpleWorkerRequest.
2769
2770 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2771
2772         * HttpUtility.cs: little typo, big headache.
2773
2774 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2775
2776         * HttpRuntime.cs: don't throw NotImplemented in a couple of methods.
2777
2778 2002-06-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2779
2780         * System.Web/HttpResponse.cs: 
2781
2782         Fixes based on class status page:
2783         
2784                 - Add attributes (DefaultEvent, ParseChildren).
2785                 - Fix declarations.
2786                 - Explicitly implement some interfaces (IPostBackDataHandler
2787                 and IPostBackEventHandler).
2788                 - Implemented some missing methods.
2789
2790 2002-06-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2791
2792         * HttpContext.cs:
2793         (Session): return null instead of throwing an exception.
2794
2795         * HttpRequest.cs:
2796         (HttpMethod): return RequestType if not set.
2797         (GetRawContent): return QueryString if we don't have a
2798         HttpWorkerRequest.
2799
2800         * HttpUtility.cs: fixed Decode and Encode.
2801
2802 2002-06-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2803
2804         * HttpApplication.cs:
2805         * HttpContext.cs: added System.Web.SessionState namespace.
2806
2807         * HttpSessionState.cs: removed. It is under
2808         System.Web.SessionState.
2809
2810 2002-06-10  Duncan Mak  <duncan@ximian.com>
2811
2812         * HttpBrowserCapabilities.cs (BackgroundSounds): Fixed typo.
2813
2814 2002-06-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2815
2816         * HttpRequest.cs: implemented Browser property.
2817
2818 2002-06-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2819
2820         * HttpBrowserCapabilities.cs: stubbed out.
2821
2822 2002-05-18  Miguel de Icaza  <miguel@ximian.com>
2823
2824         * HttpRuntime.cs: Reformat file.
2825
2826 2002-05-07  Duncan Mak  <duncan@ximian.com>
2827
2828         * HttpBrowserCapabilities.cs: Added, replacing
2829         HttpBrowserCapabilites because of typo.
2830
2831         * HttpBrowserCapabilites.cs: Removed, replaced by above.
2832
2833         * HttpRequest.cs (Browser): Fixed typo.
2834
2835 2002-04-12  Patrik Torstensson <patrik.torstensson@labs2.com>
2836
2837         * HttpApplication.cs: Minor updates
2838         * HttpApplicationState.cs: Ready.
2839         * HttpClientCertificate.cs: Signature updates
2840         * HttpValueCollection.cs: ready
2841         * HttpStaticObjectsCollection.cs: ready
2842         * HttpResponseHeader.cs: made internal only
2843         * HttpResponse.cs: Signature updates
2844         * HttpPostedFile.cs: ready
2845         * HttpCacheVaryByHeaders.cs: ready (except communication to policy)
2846         * HttpCacheVaryByParams.cs: ready (except communication to policy)
2847         
2848         System.Web is now over 60% ready.. 
2849
2850 2002-04-11  Patrik Torstensson <patrik.torstensson@labs2.com>
2851
2852         * HttpException.cs: 95% ready, only windows dependent code left
2853         * HttpFileCollection.cs: Finished.
2854         * HttpRequest.cs: Minor fixes and fixed signature problems
2855         * HttpResponse.cs: Implementation of missing methods and signature problems
2856         * HttpResponseHeader.cs: Fixed signature problems
2857         * HttpRuntime.cs: Fixed signature problems
2858         * HttpServerUtility.cs: Added support for HttpApplication
2859         * HttpSessionState.cs: Fixed signature issues
2860         * HttpUtility.cs: fixed signature issues
2861         * HttpValueCollection.cs: Support for cookie parsing and fixed signature issues
2862         * HttpWorkerRequest.cs: Fixed small signature issue
2863         * HttpWriter.cs: Fixed signature issue
2864         * HttpApplication.cs: Basic implementation
2865         * HttpApplicationState.cs: Small fixes to support major change comming up
2866         * HttpBrowserCapabilities.cs: Added Type method
2867         * HttpClientCertificate.cs: Almost ready, needs to parse certificate.
2868         * HttpContext.cs: Fixed signature issues and added last methods.
2869         * HttpCookie.cs: Full implementation
2870         * HttpCookieCollection.cs: Full implementation
2871         * TraceContext.cs: Methods implemented.
2872         * HttpPostedFile.cs: Placeholder
2873         * HttpStaticObjectsCollection.cs: Placeholder
2874         * HttpModuleCollection.cs: Ready, will be used during the major revamp.
2875         
2876         * Fixed a number of other small signature problems also (class status page)
2877         
2878         
2879 2002-04-10  Patrik Torstensson <patrik.torstensson@labs2.com>
2880
2881     * HttpWorkerRequest.EndOfSendNotification.cs Removed (included in WorkerRequest)
2882     * Checkin of all new files (noted in last changenote)
2883
2884 2002-04-10  Patrik Torstensson <patrik.torstensson@labs2.com>
2885
2886     * HttpContext.cs: First implementation (basic support, few methods left to impl)
2887     * HttpException.cs: Partial implementation (basic support)
2888     * HttpHelper.cs: Header parse helper, used by runtime (non public)
2889     * HttpRequest.cs: Implementation (all methods there, not all fully impl)
2890     * HttpRequestStream.cs: Full implementation
2891     * HttpResponse.cs: Partial implementation(almost all methods)
2892     * HttpResponseHeader.cs: Header helper
2893     * HttpResponseStream.cs: Full implementation - Response stream support
2894     * HttpResponseStreamProxy.cs: Implementation - filter support
2895     * HttpRuntime.cs: Rewrite to support one IHttpModule (use for testing the runtime)
2896         * HttpServerUtility.cs: Implemented usage of HttpContext for methods
2897                                 and moved encoding functions to HttpUtility.
2898
2899     * HttpUtility.cs: Added encoding/decoding functions from HttpServerUtility and
2900                       added the Attribute encoding functions.
2901
2902     * HttpValueCollection.cs: Implementation.
2903     * HttpWorkerRequest.cs: Rewrite and implementation of all methods (ready)
2904     * HttpWriter.cs: Implementation (with filter support)    
2905
2906     * HttpFileCollection: Added dummy class (placeholder)
2907     * HttpApplication.cs: Added dummy class (placeholder)
2908     * HttpApplicationState.cs: Added dummy class (placeholder)
2909     * HttpBrowserCapabilities.cs: Added dummy class (placeholder)
2910     * HtttpCachePolicy.cs: Added dummy class (placeholder)
2911     * HttpClientCertificate.cs: Added dummy class (placeholder)
2912     * HttpSessionState.cs: Added dummy class (placeholder)
2913     * TraceContext.cs: Added dummy class (placeholder)
2914     
2915
2916 2002/04/10  Nick Drochak <ndrochak@gol.com>
2917
2918         * HttpServerUtility.cs: Fix build breaker.
2919
2920 2002-03-28  Wictor Wiln  <wictor@iBizkit.se>
2921
2922         * HttpServerUtils.cs : Added some more functionality
2923         
2924 2002-03-28  Martin Baulig  <martin@gnome.org>
2925
2926         * HttpServerUtils.cs (UrlDecode): You cannot implicitly cast a
2927         char to a string, use ToString() instead.
2928
2929 2002-03-16  Gaurav Vaish  <gavish@iitk.ac.in>
2930
2931         * WebCategoryAttribute.cs
2932                                : Added private attribute.
2933
2934 2002-03-16  Gaurav Vaish  <gavish@iitk.ac.in>
2935
2936         * HttpRuntime.cs       : Stubbed methods for
2937                   FormatStringResource(...) in agreement with the various
2938                   overloads available at String.Format(...)
2939
2940 2002-01-08  Gaurav Vaish  <gavish@iitk.ac.in>
2941
2942         * TODOAttribute.cs     : Added, as an internal class to the assembly
2943
2944 2002-01-03  Nick Drochak  <ndrochak@gol.com>
2945
2946         * HttpRuntime.cs: remove uneeded exception variable from catch and
2947         initialize remaining instance members to avoid compile warnings
2948
2949 2002-01-02  Nick Drochak  <ndrochak@gol.com>
2950
2951         * HttpRuntime.cs: fix spelling error/variable name change.
2952
2953 2001-12-18  Gaurav Vaish <gvaish@iitk.ac.in>
2954
2955         * HttpRuntime.cs       : Initial implementation
2956
2957 2001-08-29  Bob Smith  <bob@thestuff.net>
2958
2959         * HttpWorkerRequest.cs: Partial Implementation.
2960
2961 2001-08-16  Bob Smith  <bob@thestuff.net>
2962
2963          * HttpCookieCollection.cs, HttpCookie.cs: Bug fixes.
2964
2965 2001-08-09  Bob Smith  <bob@thestuff.net>
2966
2967          * BeginEventHandler.cs: Implemented.
2968          * EndEventHandler.cs: Implemented.
2969          * HttpCacheability.cs: Implemented.
2970          * HttpCacheRevalidation.cs: Implemented.
2971          * HttpCacheValidateHandler.cs: Implemented.
2972          * HttpCookieCollection.cs: Implemented.
2973          * HttpCookie.cs: Implemented.
2974          * HttpValidationStatus.cs: Implemented.
2975          * HttpWorkerRequest.EndOfSendNotification.cs: Implemented.
2976          * IHttpAsyncHandler.cs: Implemented.
2977          * IHttpHandler.cs: Implemented.
2978          * IHttpHandlerFactory.cs: Implemented.
2979          * IHttpModule.cs: Implemented.
2980          * ProcessShutdownReason.cs: Implemented.
2981          * ProcessStatus.cs: Implemented.
2982          * TraceMode.cs: Implemented.