Finally, the Syslog RFCs
Today the RFCs for the new Syslog procol and transport were published:
Today the RFCs for the new Syslog procol and transport were published:
Due to the BLIT preparations I nearly missed the important event for my GSoC project: I made it into the NetBSD CVS. :-)
Fuzzing is a great way to find input validation errors.
Just don’t use it in debug mode whith all input printed verbatim to the poor terminal… :-|
Now that I wrote my midterm summary and completed the survey for GSoC it is once again time to update the Trac-pages. The syslogd is my first try with Trac and so far it has not been too sucessful.
Now the latest internet draft for transport-tls is out for two weeks now and it looks like a consensus on the text is found — at least there were no comments so far. I spent the better part of these two weeks changing and debugging my own implementation of transport-tls, which is far beyond the schedule but at least in time to have a working and usable program for mid-term evaluation…
So this is a good time to re-read the draft and check its requirements against my current syslogd code:
I think OpenSSL needs a documentation project. My first week of GSoC coding was dedicated to transport-tls, so I started with establishing a TLS connection and accessing different parts of the X.509 certificates to check them. I would have thought these are basic tasks for every TLS-enabled application and yet I found this unexpectedly difficult.
When I came to work on Syslog one of the most disturbing texts I came across was Rainer’s observation “On the (un)reliability of plain tcp syslog…“. The problem is that a sendmsg()
system call is nearly always successful — it only indicates local errors (like a full send queue), but no network errors. So even after the other side initiated a connection shutdown one can happily write into the local buffer and only get an error on the second write.
Today the participants in Google’s Summer of Code 2008 were announced. – And my project was chosen. :-)
So now I will work for NetBSD and implement the new IETF syslog protocols.