Module dsa (dsa.c) sets variable ret (return code) to 1 by default and sets it to 0 only when private key is written to file or to stdout.
It also prints modulus to output file but prints "Public Key=" (should be "Modulus=" ?) to stdout. Examples: $ openssl dsa -in raw-dsa.pem -modulus -noout ; echo "Exit code: $?" read DSA key Public Key=B3CD45C28542AB2E030ABBDEDD1C8C53E7ADA6B4AD2F8023BE8EDC5C4E4C0E188E82F21CECD7097BA7B012CDCB0BC04B2CE433253D2A25809C61AF38BBA3D00B49F652AD2B3B07DBA0406DF96B2733257475F2AC5C8888A272BCE0DF68D0B28B251150A11FC9FA06845D14F990004EB3DB1D122FE93BD95897039404BBBB714FBC4A7B5309F6FB307C151A45FCE375F9B7E1C9488E0032794C3202D80ECC54D16C63821E11D0C9BFDC6439F6E7825F09829A52BBC5435CE8E29BC392FA3CE50FD745C1C2C8E3BDDE0846C1E785F283182FB1F59C1EBCDDFEF555B1B795D253094FA027D1E18AA19A957C69A5CDBA6B5FDB28D237C02AFAB95430BD2A1E56AA14 Exit code: 1 $ openssl dsa -in raw-dsa.pem -modulus -out /dev/null ; echo "Exit code: $?" read DSA key Public Key= writing DSA key Exit code: 0 $ openssl dsa -in raw-dsa.pem -modulus -out tmp ; echo "Exit code: $?" read DSA key Public Key= writing DSA key Exit code: 0 (File tmp contains both modulus and private key). $ openssl dsa -in raw-dsa.pem -modulus ; echo "Exit code: $?" read DSA key Public Key=B3CD45C28542AB2E030ABBDEDD1C8C53E7ADA6B4AD2F8023BE8EDC5C4E4C0E188E82F21CECD7097BA7B012CDCB0BC04B2CE433253D2A25809C61AF38BBA3D00B49F652AD2B3B07DBA0406DF96B2733257475F2AC5C8888A272BCE0DF68D0B28B251150A11FC9FA06845D14F990004EB3DB1D122FE93BD95897039404BBBB714FBC4A7B5309F6FB307C151A45FCE375F9B7E1C9488E0032794C3202D80ECC54D16C63821E11D0C9BFDC6439F6E7825F09829A52BBC5435CE8E29BC392FA3CE50FD745C1C2C8E3BDDE0846C1E785F283182FB1F59C1EBCDDFEF555B1B795D253094FA027D1E18AA19A957C69A5CDBA6B5FDB28D237C02AFAB95430BD2A1E56AA14 writing DSA key -----BEGIN DSA PRIVATE KEY----- MIIDVgIBAAKCAQEA4Bi/b8IgF2rT2KpwdQDCNNxH69fSGEO+xBWaxRV68vGsdsTv nR2YZbOJyEfbkLLsShwaXsxZNM90bgJeGIvKb5Y39QNpnuM5ulFNZS3XLVakD2OJ MnLRPYmC/6B8vc8zYUO49zsFspICTRPjexncT3/lF+jplmyDN2LQG7xkU7Lc6INQ JlSOX8dbrrHjf07cVo+HAbEwnNGbNZLmbho5W3E8eh8iO8Cbl8SvEZxXeypJtJ1o WTLPNYpXwu/STV6rwiTMyUFBk5vNM2Rwj/r5XmsG888OPHq2H4WuD8Nbva1as3MS kz14SpbPGQu1lzUklUETvUYLOfx4oOsGZ3Ck9QIhAP3gPe6+IZDc4LnXatZ3EJyF wqIdvR2MGnl/W+KBL8AjAoIBAG4RfJ9W8ShZ/DI1s/7SqDTYqe2sB/F88O/BsfSz UsnXisbQJP6JZ1B6P1NyT6ZvhKBTOPO9ERGA0S/Y9o8Ond76rPUxgcsyUHgSiE/Y +LcuskE/puc+dOJbnNpY/Pn8LEECBcaICAMryYvMykBMSKuR6EMPjpJ6YwqqPgQg ZmFKsFbDOzFtY8CagI9zAIe3VFEZSbHKJ3cHkzdc1/9U/HtcRs94a5pc+JqeGAil wiBm9Dh3PRiLwdo9Jjh1StEL0jUR/2u7x86CRlKmvAaFMegkX/SkGhrEr4FcRVpz p8xp1ZfjugEMAc5yQ8qToFkJcvbrnA955obJiyR8nbpBj1MCggEBALPNRcKFQqsu Awq73t0cjFPnraa0rS+AI76O3FxOTA4YjoLyHOzXCXunsBLNywvASyzkMyU9KiWA nGGvOLuj0AtJ9lKtKzsH26BAbflrJzMldHXyrFyIiKJyvODfaNCyiyURUKEfyfoG hF0U+ZAATrPbHRIv6TvZWJcDlAS7u3FPvEp7Uwn2+zB8FRpF/ON1+bfhyUiOADJ5 TDIC2A7MVNFsY4IeEdDJv9xkOfbngl8JgppSu8VDXOjim8OS+jzlD9dFwcLI473e CEbB54XygxgvsfWcHrzd/vVVsbeV0lMJT6An0eGKoZqVfGmlzbprX9so0jfAKvq5 VDC9Kh5WqhQCIGi4+Rqnw7iTDP9ht9vqq2FeDCDoCubCDG/4FPr0zdfB -----END DSA PRIVATE KEY----- Exit code: 0 ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [email protected] Automated List Manager [email protected]
