The getuid() function in the original returned allocated storage. This version returns a stack allocated pointer which will surely lead to mayhem. I added a #warning to this function. It needs to be looked at (and possibly other similar issues in this driver).