There is a known issue about the input to "smime -sign" being a pipe. Can smime.c be changed so that it gives an error when it tries to rewind the input? Something like: if (BIO_reset(in) != 0 && (flags & PKCS7_DETACHED)) { BIO_printf(bio_err, "Can't rewind input file\n"); goto end; } (Diff w.r.t 0.9.6d-beta1 is attached) This would have saved me some time tracking down the problem.
Thanks, Ken Hirsch
smime.c.diff
Description: Binary data