I replied to the email you sent earlier, but I thought it might be
best to post here so everything is in one place.  I noticed that the
ldd info for example06 earlier didn't have libcurlpp in it.  Why would
that be?

 ldd libssl.so.0.9.7
        libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x4003b000)
        libdl.so.2 => /lib/libdl.so.2 (0x40140000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

 ldd libssl.so.4
        libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x4003b000)
        libdl.so.2 => /lib/libdl.so.2 (0x40140000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

ldd libcurlpp.so.0
        libcurl.so.4 => /usr/lib/libcurl.so.4 (0x40032000)
        libidn.so.11 => /usr/lib/libidn.so.11 (0x400c4000)
        libssh2.so.1 => /usr/lib/libssh2.so.1 (0x400f4000)
        libssl.so.4 => /lib/libssl.so.4 (0x40115000)
        libcrypto.so.4 => /usr/lib/libcrypto.so.4 (0x4014a000)
        libldap.so.2 => /usr/lib/libldap.so.2 (0x4024f000)
        libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2
(0x40282000)
        libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x40295000)
        libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3
(0x402f3000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40303000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40311000)
        libm.so.6 => /lib/tls/libm.so.6 (0x403c4000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x403e7000)
        libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3
(0x403ef000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x403f1000)
        libdl.so.2 => /lib/libdl.so.2 (0x40403000)
        liblber.so.2 => /usr/lib/liblber.so.2 (0x40408000)
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x40414000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x40427000)

 ldd libcurl.so.3
        libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0x40035000)
        libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x40068000)
        libdl.so.2 => /lib/libdl.so.2 (0x4016d000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40171000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

ldd libcurl.so.4
        libssl.so.2 => /lib/libssl.so.2 (0x4009a000)
        libcrypto.so.2 => /usr/lib/libcrypto.so.2 (0x400cf000)
        libldap.so.2 => /usr/lib/libldap.so.2 (0x401d4000)
        libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2
(0x40206000)
        libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x40219000)
        libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3
(0x40277000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40288000)
        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
        libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3
(0x40296000)
        libresolv.so.2 => /lib/libresolv.so.2 (0x40298000)
        libdl.so.2 => /lib/libdl.so.2 (0x402aa000)
        liblber.so.2 => /usr/lib/liblber.so.2 (0x402ae000)
        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x402bb000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x402ce000)

/usr/include/curl/curlver.h
        #define LIBCURL_VERSION "7.19.5"

/usr/local/include/curl/curlver.h
        #define LIBCURL_VERSION "7.12.2"


On Aug 17, 10:27 am, Jean-Philippe Barette-LaPierre
<[email protected]> wrote:
> testing.cgi:
>        libcurl.so.4 => /usr/lib/libcurl.so.4 (0x4048a000)
> example06:
>        libcurl.so.3 => /usr/local/lib/libcurl.so.3 (0x400d1000)
>
> You need to link with the same library. So, when you compile curlpp AND your
> problem, ensure you link
> to the same libraries. The different libssl libraries might be from
> different packages, meaning from different
> distributions. Honestly it seems to be a mess. Can you send a ldd output of:
>
> libssl.so.0.9.7
> libssl.so.4
> libcurlpp.so.0
> libcurl.so.3
> libcurl.so.4
>
> And please send both installed curl version. You seems to have one
> in /usr/ and one in /usr/local. So, the version can be retreived by looking
> at:
>
> /usr/include/curl/curlver.h
> /usr/local/include/curl/curlver.h
>
> So, curlpp is linked to libcurl.so.3. I don't know why you got two different
> version
>
> On Mon, Aug 17, 2009 at 10:01 AM, tatebn <[email protected]> wrote:
>
> > This is the "ldd" output for testing.cgi.
>
> >  libmysqlclient.so.10 => /usr/lib/mysql/libmysqlclient.so.10
> > (0x4001e000)
> >        libcrypt.so.1 => /lib/libcrypt.so.1 (0x40055000)
> >        libpfpro.so => /usr/local/verisign/payflowpro/linux/lib/
> > libpfpro.so (0x40082000)
> >        libcurlpp.so.0 => /usr/lib/libcurlpp.so.0 (0x40128000)
> >        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40152000)
> >        libidn.so.11 => /usr/lib/libidn.so.11 (0x40205000)
> >        libssh2.so.1 => /usr/lib/libssh2.so.1 (0x40236000)
> >        libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0x40257000)
> >        libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x4028a000)
> >        libldap.so.2 => /usr/lib/libldap.so.2 (0x4038f000)
> >        libgssapi_krb5.so.2 => /usr/kerberos/lib/libgssapi_krb5.so.2
> > (0x403c1000)
> >        libkrb5.so.3 => /usr/kerberos/lib/libkrb5.so.3 (0x403d4000)
> >        libk5crypto.so.3 => /usr/kerberos/lib/libk5crypto.so.3
> > (0x40433000)
> >        libz.so.1 => /usr/lib/libz.so.1 (0x40443000)
> >        libm.so.6 => /lib/tls/libm.so.6 (0x40451000)
> >        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40473000)
> >        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
> >        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x4047b000)
> >        libcurl.so.4 => /usr/lib/libcurl.so.4 (0x4048a000)
> >        libnsl.so.1 => /lib/libnsl.so.1 (0x4051c000)
> >        libssl.so.4 => /lib/libssl.so.4 (0x40531000)
> >        libcom_err.so.3 => /usr/kerberos/lib/libcom_err.so.3
> > (0x40566000)
> >        libresolv.so.2 => /lib/libresolv.so.2 (0x40568000)
> >        libdl.so.2 => /lib/libdl.so.2 (0x4057b000)
> >        liblber.so.2 => /usr/lib/liblber.so.2 (0x4057f000)
> >        libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0x4058b000)
> >        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
>
> > But the odd thing is, it's all good from the command line.  I switched
> > the owner and group for example06 to match that of testing.cgi and it
> > still ran just fine.   Looks like test.cgi is loading two versions of
> > libssl.so.
>
> > here's ldd for example06.  There are some significant differences.
> > example06 is apparently not even loading curlpp.  And there are
> > version diffs that could be significant. Let me know what you think.
>
> >  libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x4001e000)
> >        libcurl.so.3 => /usr/local/lib/libcurl.so.3 (0x400d1000)
> >        libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0x400fe000)
> >        libcrypto.so.0.9.7 => /usr/lib/libcrypto.so.0.9.7 (0x40131000)
> >        libdl.so.2 => /lib/libdl.so.2 (0x40236000)
> >        libz.so.1 => /usr/lib/libz.so.1 (0x4023a000)
> >        libm.so.6 => /lib/tls/libm.so.6 (0x40249000)
> >        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x4026b000)
> >        libc.so.6 => /lib/tls/libc.so.6 (0x42000000)
> >        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
>
> > On Aug 17, 9:10 am, Jean-Philippe Barette-LaPierre
> > <[email protected]> wrote:
> > > On Sun, Aug 16, 2009 at 6:55 PM, tatebn <[email protected]> wrote:
>
> > > > It looks at this point like everything is find if the URL option isn't
> > > > set.  Any idea why that would be?  I don't know enough about incoming/
> > > > outgoing connection setttings to know how to check whether or not the
> > > > cgi is allowed to connect to anything.  My current guess is that it's
> > > > not, and that's why it dies with an outgoing connection.  Any insight
> > > > or helpful advice?
>
> > > can you send the "ldd" output for your cgi, curlpp and libcurl?
> > > if you don't know what is ldd, type this on the command line:
>
> > > man ldd
>
> > > > Thanks,
> > > > Brandon
>
> > > > On Aug 16, 12:17 am, tatebn <[email protected]> wrote:
> > > > > So it looks like the curlpp examples are working, but the program I
> > > > > need to work still isn't.  Here's the code, what in here would make
> > > > > perform() die?
>
> > > > > Note: perform() also dies if I comment out all the options except
> > > > > host.
>
> > //--------------------------------------------------------------------
> > > > > // Includes
>
> > //--------------------------------------------------------------------
> > > > > #include "verisign_io.h"
> > > > > #include "file_io.h"
> > > > > #include "error_lib.h"
> > > > > #include "logging.h"
> > > > > #include "toolkit.h"
> > > > > #include "parm.h"
>
> > > > > //using current time in seconds and credit card number for unique
> > > > > transaction id
> > > > > #include <time.h>
> > > > > #include <string>
> > > > > #include <sstream>
> > > > > #include <iostream>
>
> > > > > //#include "curl/curl.h"
> > > > > #include <curlpp/cURLpp.hpp>
> > > > > #include <curlpp/Easy.hpp>
> > > > > #include <curlpp/Options.hpp>
> > > > > #include <curlpp/Exception.hpp>
>
> > > > > #ifdef CGI_VERSION
> > > > >         #include "cgic.h"
> > > > > #endif
>
> > > > > //
> > > > > *********************************************************************
> > > > > // Global Functions
> > > > > //
> > > > > *********************************************************************
>
> > //--------------------------------------------------------------------
> > > > > // GetValueFromResponseString
>
> > //--------------------------------------------------------------------
> > > > > bool GetValueFromResponseString (const char* key,
>
> > > > > TString& value,
>
> > > > > TString responseString)
> > > > > {
> > > > >         char*           startPtr        = NULL;
> > > > >         char*           endPtr          = NULL;
> > > > >         size_t          offset          = 0;
> > > > >         size_t          length          = 0;
>
> > > > >         value = "";
>
> > > > >         startPtr = responseString.Find (key);
> > > > >         if (startPtr)
> > > > >         {
> > > > >                 startPtr += strlen(key);
> > > > >                 offset = responseString.PointerToOffset (startPtr);
> > > > >                 endPtr = responseString.Find ("&", true, offset);
> > > > >                 if (endPtr)
> > > > >                         length = endPtr - startPtr;
> > > > >                 else
> > > > >                         length = strlen(startPtr);
>
> > > > >                 value = responseString.SubString(offset,length);
> > > > >         }
>
> > > > >         return (startPtr != NULL);
>
> > > > > }
>
> > //--------------------------------------------------------------------
> > > > > // CallVerisign
>
> > //--------------------------------------------------------------------
> > > > > bool CallVerisign (const TDBSplitReport* dbObjPtr,
> > > > >                                          TString creditCardNumber,
> > > > >                                          TString expirationDate,
> > > > >                                          float amount,
> > > > >                                          TString customerZipCode,
> > > > >                                          TString customerAddress,
> > > > >                                          TString authorizationCode,
> > > > >                                          TString transactionType,
> > > > >                                          TString comment,
> > > > >                                          TString& answerText,
> > > > >                                          TString& referenceID)
> > > > > {
> > > > >         bool                    success = false;
> > > > >         bool                    isTest = false;
> > > > >         //int                           verisignContext;
> > > > >         int                             resultCode;
> > > > >         TString                 localAmount;
> > > > >         TString                 verisignArgs;
> > > > >         TString                 responseMessage;
> > > > >         //TString                       referenceID;
> > > > >         TString                 tmpString;
> > > > >         TString                 responseString;
> > > > >         TString                 logEntry;
> > > > >         //char                  *responseBuffer;
>
> > > > > AddLogEntry(dbObjPtr, "INFO\tVerisign.cc\tAbout to setup
> > > > > environment");
>
> > > > >         // Setup the environment so it can find the certificate
> > > > >         setenv("PFPRO_CERT_PATH", "/usr/local/verisign/payflowpro/
> > > > > linux/certs", 1);
>
> > > > >         // Nullify the answer text
> > > > >         answerText = "";
> > > > >         // Adjust some arguments
> > > > >         creditCardNumber.NumbersOnly();
> > > > >         expirationDate.NumbersOnly();
> > > > >         customerZipCode.NumbersOnly();
> > > > >         if (customerZipCode.IsEmpty())
> > > > >                 customerZipCode = "99999";
> > > > >         customerZipCode = customerZipCode.SubString(0,5);
> > > > >         if (comment.IsEmpty())
> > > > >                 comment = "---";
> > > > >         comment = comment.SubString(0,18);
> > > > >         localAmount.CopyFrom(amount,2);
> > > > >         // convert expiration from YYYY to MMYY format
> > > > >         tmpString = expirationDate;
> > > > >         expirationDate =
>
> ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"curlpp" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/curlpp?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to