One tiny nitpick. It would be nice to get rid of the lastmname stuff and make up a unique object name from the symbol.
Not sure if s->ident would work though.