[perl #132668] [NATIVECALL][SEGV][SEVERE] OpenSSL PEM_write_bio_RSAPrivateKey
[email protected] ("Salvador Ortiz via RT") Tue, 05 Mar 2019 11:16:42 -0800
| Newsgroups | perl.perl6.compiler |
|---|---|
| Message-ID | <[email protected]> |
------------=_1551813402-19911-4
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset="utf-8"
The problem is the PEM_write_bio_RSAPrivateKey signature used in the NativeCall declaration, it missed five arguments.
>From the manual:
int PEM_write_bio_RSAPrivateKey(BIO *bp, RSA *x, const EVP_CIPHER *enc,
unsigned char *kstr, int klen,
pem_password_cb *cb, void *u);
So when called it received random values.
My modernized example attached that succeds.
------------=_1551813402-19911-4
Content-Type: application/octet-stream; name="nativessl.p6"
Content-Disposition: inline; filename="nativessl.p6"
Content-Transfer-Encoding: base64
RT-Attachment: 132668/1616811/833620
dXNlIHY2LmM7CnVzZSBOYXRpdmVMaWJzOnZlcjwwLjAuNz47CgpteSAkTGli
ID0gTmF0aXZlTGliczo6TG9hZGVyLmxvYWQoJ2xpYnNzbC5zbycpOwoKc3Vi
IFJTQV9uZXcoLS0+UG9pbnRlcikgaXMgbmF0aXZlIHsgKiB9CnN1YiBSU0Ff
Z2VuZXJhdGVfa2V5X2V4KFBvaW50ZXIgJHJzYSwgaW50MzIgJGJpdHMsIFBv
aW50ZXIgJGUsIFBvaW50ZXIgJGNiIC0tPiBQb2ludGVyKSBpcyBuYXRpdmUg
eyAqIH0Kc3ViIEJOX25ldygtLT5Qb2ludGVyKSBpcyBuYXRpdmUgeyAqIH0K
c3ViIEJOX3NldF93b3JkKFBvaW50ZXIgJGJuLCB1aW50MzIgJGUgLS0+IGlu
dDMyKSBpcyBuYXRpdmUgeyAqIH0Kc3ViIEJJT19zX21lbSgtLT5Qb2ludGVy
KSBpcyBuYXRpdmUgeyAqIH0Kc3ViIFBFTV93cml0ZV9iaW9fUlNBUHJpdmF0
ZUtleShQb2ludGVyICRiaW8sIFBvaW50ZXIgJHJzYSwgUG9pbnRlciAkY2Is
IFBvaW50ZXIgJGtzLCBpbnQzMiAka2wsIFBvaW50ZXIgJHBjYiwgUG9pbnRl
ciAkdSAtLT4gaW50MzIpIGlzIG5hdGl2ZSB7ICogfQpzdWIgQklPX25ldyhQ
b2ludGVyICRtZXRob2QgLS0+IFBvaW50ZXIpIGlzIG5hdGl2ZSB7ICogfTsK
CnsKICAgIG15IHVpbnQzMiAkYml0cyA9IDIwNDg7CiAgICBteSAkYm5lID0g
Qk5fbmV3KCk7CiAgICBCTl9zZXRfd29yZCgkYm5lLCAzKSB8fCBkaWU7CiAg
ICBteSAkcnNhID0gUlNBX25ldygpOwogICAgUlNBX2dlbmVyYXRlX2tleV9l
eCgkcnNhLCAkYml0cywgJGJuZSwgUG9pbnRlcikgfHwgZGllOwogICAgbXkg
JGJpbyA9IEJJT19uZXcoQklPX3NfbWVtKCkpOwogICAgUEVNX3dyaXRlX2Jp
b19SU0FQcml2YXRlS2V5KCRiaW8sICRyc2EsIFBvaW50ZXIsIFBvaW50ZXIs
IDAsIFBvaW50ZXIsIFBvaW50ZXIpOwp9CgoK
------------=_1551813402-19911-4--