Alex Ionescu wrote:
That code was good enough to start with user mode subsystem servers, but till now it has prevented us from testing real system components like the SM, CSR and friends etc. for compatibility in ROS. Unforunately, most of our LPC-dependent components are really broken because they depend on the not-so-correct LPC implementation.
It probably may be fixed easily by peeking up messages from the named port's queue and not from the connected post's queue. That is the major difference.
Also checking with some PDFs, some of our checks are incorrect, and a lot of our stuff is just hard-coded. It took me a day to figure out where the max data/message sizes come from, but I think it was worth it, because that was just a small step in understanding the bigger picture.
Where do they come from? It is still a mistery for me!
Anytime, just send it to my personal e-mail and we can collaborate.
Done.
About LPC flaws - This one is a good gallery by Razor: http://www.bindview.com/Support/RAZOR/Utilities/Windows/LPCAdvisory.cfm
Emanuele