Jeffrey- You are correct, all of those functions are internal-only (they are not available using NSS shared libraries). The functions you named are part of NSS's S/MIME v2 library, that is being displaced by the new S/MIME v3 library. As you discovered, the v3 library contains the NSS_CMS* functions. NSS typically handles byte streams via the SECItem type, which has a "data" member that holds the bytes, and a "len" member for the number of bytes. The NSS_CMS* functions allow you to work with data using SECItem's for input and output. There is some documentation for the S/MIME v3 library at: http://www.mozilla.org/projects/security/pki/nss/smime/ This is a sample program using functionality from the library: http://lxr.mozilla.org/mozilla/source/security/nss/cmd/smimetools/cmsutil.c -Ian
