summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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.
2011-11-13Adding an opaque pointer to the generic Socket listener.Pixel
2011-11-13Adding buffered streams; mainly for string parsing.Pixel
2011-11-13Fixing a few bugs with Buffer - yes, it indeed does need a few more unit ↵Pixel
tests....
2011-11-13Adding isEOF() to Buffers (and cleaning code a tiny bit)Pixel
2011-11-13Adding seek and tell aliases to rseek and rtell.Pixel
2011-11-13Securing double closes in Sockets.Pixel
2011-11-12Adding seekable buffers. Probably would need a few more tests in the Handles ↵Pixel
unit test.
2011-11-10Fixing that heisenbug. Huh, yeah, it's usually better to use a real TLS ↵Pixel
instead of a dummy one...
2011-11-10... didn't I already fix this one... ? Weird.Pixel