I work in the TCP/IP for OpenVMS engineering group. My immediate objective WRT invocation of SPAMASSASSIN is to optimize the way I hook SPAMassassin into our product. (I haven't decided where I'll hook it in yet though.)
You may also want to look at qpsmtpd, which is a replacement smtp daemon for qmail written exclusively in Perl. You won't care about the base module itself, but the spamassassin module demonstrates how simple it is to use the spamc interface to communicate with spamd.
If you can get spamd running under OpenVMS (even if you have to switch from using a fork() model and use some sort of prespawned worker model with VMS mailboxes as the interface), you can then add the trivially easy spamc portion directly to your C code. Trying to embed all of SpamAssassin in your C library is going to be an exercise in frustration, I think, and help no one else.
My 2 cents...
John
-- John Peacock Director of Information Research and Technology Rowman & Littlefield Publishing Group 4501 Forbes Boulevard Suite H Lanham, MD 20706 301-459-3366 x.5010 fax 301-429-5748
