--- /dev/null
+--- qca-tls-1.0/qca-tls.cpp.orig 2003-12-10 17:53:57.000000000 +0100
++++ qca-tls-1.0/qca-tls.cpp 2006-08-07 10:09:04.138046750 +0200
+@@ -454,7 +454,11 @@
+ if(!r) {
+ // try this other public function, for whatever reason
+ p = (void *)in;
++#ifdef OSSL_097
++ r = d2i_RSA_PUBKEY(NULL, (const unsigned char **)&p, len);
++#else
+ r = d2i_RSA_PUBKEY(NULL, (unsigned char **)&p, len);
++#endif
+ }
+ if(r) {
+ if(pub) {
+@@ -798,7 +802,11 @@
+
+ bool createFromDER(const char *in, unsigned int len)
+ {
++#ifdef OSSL_097
++ const unsigned char *p = (const unsigned char *)in;
++#else
+ unsigned char *p = (unsigned char *)in;
++#endif
+ X509 *t = d2i_X509(NULL, &p, len);
+ if(!t)
+ return false;