summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-11-19Adding error 500s support.Pixel
2011-11-19Of course, spaces are optionnal...Pixel
2011-11-19Handling more Connection tags, separated with commas; and adding the 'split' ↵Pixel
method to String.
2011-11-19Fixing a few very stupid bugs.Pixel
2011-11-18Starting to re-organize the HTTP code a bit. Sharing code between the server ↵Pixel
and a potential client makes sense. Also packing requests and responses into structures / classes is probably a good idea.
2011-11-18Updating libev's timestamp after we (potentially) wait a long time for ↵Pixel
something to do.
2011-11-18Making the debug build to increase libev's debugness too.Pixel
2011-11-18Got this one wrong; one need to get the refcount to 0 to delete itself.Pixel
2011-11-17Adding a few reasons why we'd get an HTTP 400 error, and fixing the ↵Pixel
Connection header (I hate RFCs, they never mentionned keep-alive in the list of potential headers)
2011-11-17Look at that. It seems that, indeed, IPv6 CAN get very retarded.Pixel
2011-11-17HTTP server's first real test, alongside multiple taskmanager threads.Pixel
I'm not really sure I fully like the way I'm designing this, but I guess it could be solved with an HTTP/HTML helper class around the Action class. However, the HTTP server awfully need reference counting, so it doesn't go away before all of the workers disappear, which means a bit of a redesign of the Listener template.
2011-11-17Forgot to remove this; we shouldn't free the stack from the Task itself ↵Pixel
anymore: the task manager takes care of this now.
2011-11-17And adding the round robin system to the task scheduler. Now to write some ↵Pixel
unit test for this...
2011-11-17Cleaning some code, redesigning a bit the stack allocation problem from the ↵Pixel
task manager, and actually implementing it properly.
2011-11-17Introducing the fact we need a more efficient stack allocator, and that it's ↵Pixel
to be performed from the task manager.
2011-11-17Since tasks can be on different task managers, one has to signal them a bit ↵Pixel
differently.
2011-11-16Adding the Regex class.Pixel
2011-11-16clang actually managed to pick up a bug...Pixel
2011-11-16Seems clang is picky. I don't know if I like or hate this compiler yet.Pixel
2011-11-16I hate doing this, but, well. Maybe I should design a memory allocator ↵Pixel
class, but, meh.
2011-11-16And with the new TaskScheduler system, let's add a way for a new task to ↵Pixel
stick on another one's thread, if needed. (and it is)
2011-11-16Kind of a big revamp of the TaskMan / Task model, in order to introduce a ↵Pixel
TaskScheduler. The idea is that we need to support multiple task managers from multiple threads. So that revamp means we now should be able to support that, except the TaskScheduler needs to implement a round robin system, to distribute tasks across multiple task managers. But at least, the fundamental redesign to permit this is here.
2011-11-16This function doesn't exist.Pixel
2011-11-16Even if an URI doesn't have variables embedded, it still may contained ↵Pixel
escaped characters.
2011-11-16Adding a simple 'daemon name' for our output.Pixel
2011-11-16Using the new WriteOnly class in the HttpServer, to protect the socket from ↵Pixel
being read, as it needs to go thru the BStream.
2011-11-16Of course, to be viable, the ReadOnly and WriteOnly classes need to derive ↵Pixel
from Handle...
2011-11-15Adding two Handle restricters: ReadOnly and WriteOnly.Pixel
2011-11-15Basic POST support done; multipart/form-data is yet to be finalized.Pixel
2011-11-15A bit more work on the HTTP server. Only the parsing of the POST method is ↵Pixel
remaining. Multipart is going to be cumbersome.
2011-11-15Making the String class a bit more tolerent of NULL strings.Pixel
2011-11-15The HTTP server now takes advantage of that new parameter of forceRead/Write.Pixel
2011-11-15Adding a potential event to cancel a forced read/write, such as a timeout.Pixel
2011-11-15Balancing code a bit out of the constructor.Pixel
2011-11-15Actually, that's the proper fix for the Listener system, otherwise accept() ↵Pixel
will never stop, rendering the stop method of the Listener inneffective.
2011-11-15Moving code around for the Listener, in order to avoid too much template code.Pixel
2011-11-15Adding the forceRead/Write methods, to circumvent the potential problem that ↵Pixel
a file descriptor can do less than being asked.
2011-11-15Moving the static yield from Task.h to Task.cc. You don't want to throw an ↵Pixel
exception from a .h file...
2011-11-15Fixing the Socket code a bit, effectively making the listener system working.Pixel
2011-11-15Fixing a few parsing mistakes.Pixel
2011-11-15Initial parsing of the Http request should now be there.Pixel
2011-11-14Typo.Pixel
2011-11-14Some more basic work on the HTTP server. Some of the main ideas are not ↵Pixel
fleshed up, and writing the actual server should now be sort of straightforward.
2011-11-14Making sure the typecasting on Handles worked properly.Pixel
2011-11-14Funny this worked so far; fixing accept().Pixel
2011-11-14As always, doing stuff during a constructor is a bad idea, especially if it ↵Pixel
contains a potential task switch.
2011-11-14Making the ResolverThread exitting properly.Pixel
2011-11-14If I'm having a wrapper class around Handles, it's for a reason...Pixel
2011-11-14Adding 'isEmpty' helper. We probably want a 'put' method also. That could ↵Pixel
come in handy.
2011-11-13Adding the skeleton of an HTTP server; still work in progress though: it ↵Pixel
still needs coding, and won't work as it. And it needs a unit test.