How to use ISSL interface? | developer.brewmp.com How to use ISSL interface? | developer.brewmp.com

Developer

How to use ISSL interface?

Forums:

How to use ISSL interface?
Someone has example?
Thanks.

This PDF may help you. Sorry but this is in Japanish ...www.brewjapan.com/technical/pdf/BREW_Programming_Tips_Public.pdf

This PDF may help you. Sorry but this is in Japanish ...www.brewjapan.com/technical/pdf/BREW_Programming_Tips_Public.pdf

I can't deal with it.
any idea?

I can't deal with it.
any idea?

nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSL, &pme->pISSL);
ISSL_SetSocket(pme->pISSL, pme->pISocket);
pme->pInfo.SecInfo.uProtoVersion = SSL_VERSION_30 ;
pme->pInfo.SecInfo.uKeyExchange = SSL_KEYPROT_NONE;
pme->pInfo.SecInfo.uCryptAlgo = SSL_CRYPT_RC4;
pme->pInfo.SecInfo.uHashAlgo = SSL_HASH_MD5;
pme->pInfo.SecInfo.uCipherSuite = SSL_CSUITE_RSA_WITH_RC4_128_MD5;
pme->pInfo.pSSLSocket = pme->pISocket;
pme->webOpts[0].nId = WEBOPT_SSL_TRUST_MODE;
// pme->webOpts[0].pVal = WEBOPT_SSL_TRUST_MODE;
pme->webOpts[1].nId = SSL_TRUST_MODE_IGNORE;
// pme->webOpts[1].pVal = SSL_TRUST_MODE_IGNORE;
pme->webOpts[2].nId = WEBOPT_END;
// pme->webOpts[2].pVal = WEBOPT_END;
// AEECLSID_SSLROOTCERTS
// nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_WEBOPTS, &pme->pIWebOpts);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSLROOTCERTS, &pme->pIWebOpts);
IWEBOPTS_AddOpt(pme->pIWebOpts, pme->webOpts);
CALLBACK_Init(&pme->cb, Socket_SSL_Callback, pme);
ISSL_Negotiate(pme->pISSL,(pme->pISSL,&pme->pInfo,&pme->pCerts,&pme->cb,pme->webOpts));

nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSL, &pme->pISSL);
ISSL_SetSocket(pme->pISSL, pme->pISocket);
pme->pInfo.SecInfo.uProtoVersion = SSL_VERSION_30 ;
pme->pInfo.SecInfo.uKeyExchange = SSL_KEYPROT_NONE;
pme->pInfo.SecInfo.uCryptAlgo = SSL_CRYPT_RC4;
pme->pInfo.SecInfo.uHashAlgo = SSL_HASH_MD5;
pme->pInfo.SecInfo.uCipherSuite = SSL_CSUITE_RSA_WITH_RC4_128_MD5;
pme->pInfo.pSSLSocket = pme->pISocket;
pme->webOpts[0].nId = WEBOPT_SSL_TRUST_MODE;
// pme->webOpts[0].pVal = WEBOPT_SSL_TRUST_MODE;
pme->webOpts[1].nId = SSL_TRUST_MODE_IGNORE;
// pme->webOpts[1].pVal = SSL_TRUST_MODE_IGNORE;
pme->webOpts[2].nId = WEBOPT_END;
// pme->webOpts[2].pVal = WEBOPT_END;
// AEECLSID_SSLROOTCERTS
// nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_WEBOPTS, &pme->pIWebOpts);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSLROOTCERTS, &pme->pIWebOpts);
IWEBOPTS_AddOpt(pme->pIWebOpts, pme->webOpts);
CALLBACK_Init(&pme->cb, Socket_SSL_Callback, pme);
ISSL_Negotiate(pme->pISSL,(pme->pISSL,&pme->pInfo,&pme->pCerts,&pme->cb,pme->webOpts));

pme->pInfo.pSSLSocket
pme->pISocket;

pme->pInfo.pSSLSocket
pme->pISocket;

int nRet = 0;
// SSL
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSL, &pme->pISSL);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSLROOTCERTS, &pme->pIWebOpts);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_X509CHAIN, &pme->pCerts);
ISSL_SetSocket(pme->pISSL, pme->pISocket);
pme->pInfo.SecInfo.uProtoVersion = SSL_VERSION_30 ;
pme->pInfo.SecInfo.uKeyExchange = SSL_KEYPROT_NONE;
pme->pInfo.SecInfo.uCryptAlgo = SSL_CRYPT_RC4;
pme->pInfo.SecInfo.uHashAlgo = SSL_HASH_MD5;
pme->pInfo.SecInfo.uCipherSuite = SSL_CSUITE_RSA_WITH_RC4_128_MD5;
// pme->pInfo.pSSLSocket = pme->pISocket;
pme->webOpts[0].nId = WEBOPT_SSL_TRUST_MODE;
pme->webOpts[0].pVal = (void *)SSL_TRUST_MODE_IGNORE;
pme->webOpts[1].nId = WEBOPT_DEFAULTS;
pme->webOpts[1].pVal = (void *)pme->pIWebOpts;
pme->TrustOveride.uCertID = 0;
pme->TrustOveride.uOverrideBits = X509CHAIN_OVERRIDE_ALL;
pme->webOpts[2].nId = WEBOPT_X509_OVERRIDE;
pme->webOpts[2].pVal = (void *)&pme->TrustOveride;
pme->webOpts[3].nId = WEBOPT_END;
// pme->webOpts[3].pVal = WEBOPT_END;
IWEBOPTS_AddOpt(pme->pIWebOpts, pme->webOpts);
CALLBACK_Init(&pme->cb, Socket_SSL_Callback, pme);
// ISSL_SetSocket(pme->pISSL, pme->pISocket);
ISSL_Negotiate(pme->pISSL,(pme->pISSL,&pme->pInfo,&pme->pCerts,&pme->cb,pme->webOpts));

int nRet = 0;
// SSL
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSL, &pme->pISSL);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_SSLROOTCERTS, &pme->pIWebOpts);
nRet = ISHELL_CreateInstance(pme->a.m_pIShell, AEECLSID_X509CHAIN, &pme->pCerts);
ISSL_SetSocket(pme->pISSL, pme->pISocket);
pme->pInfo.SecInfo.uProtoVersion = SSL_VERSION_30 ;
pme->pInfo.SecInfo.uKeyExchange = SSL_KEYPROT_NONE;
pme->pInfo.SecInfo.uCryptAlgo = SSL_CRYPT_RC4;
pme->pInfo.SecInfo.uHashAlgo = SSL_HASH_MD5;
pme->pInfo.SecInfo.uCipherSuite = SSL_CSUITE_RSA_WITH_RC4_128_MD5;
// pme->pInfo.pSSLSocket = pme->pISocket;
pme->webOpts[0].nId = WEBOPT_SSL_TRUST_MODE;
pme->webOpts[0].pVal = (void *)SSL_TRUST_MODE_IGNORE;
pme->webOpts[1].nId = WEBOPT_DEFAULTS;
pme->webOpts[1].pVal = (void *)pme->pIWebOpts;
pme->TrustOveride.uCertID = 0;
pme->TrustOveride.uOverrideBits = X509CHAIN_OVERRIDE_ALL;
pme->webOpts[2].nId = WEBOPT_X509_OVERRIDE;
pme->webOpts[2].pVal = (void *)&pme->TrustOveride;
pme->webOpts[3].nId = WEBOPT_END;
// pme->webOpts[3].pVal = WEBOPT_END;
IWEBOPTS_AddOpt(pme->pIWebOpts, pme->webOpts);
CALLBACK_Init(&pme->cb, Socket_SSL_Callback, pme);
// ISSL_SetSocket(pme->pISSL, pme->pISocket);
ISSL_Negotiate(pme->pISSL,(pme->pISSL,&pme->pInfo,&pme->pCerts,&pme->cb,pme->webOpts));

I'd suggest you take a look at https://brewx.qualcomm.com/bws/content/gi/common/appseng/en/knowledgebas...
It covers connecting through IWeb, but some of the concepts are very similar.

I'd suggest you take a look at https://brewx.qualcomm.com/bws/content/gi/common/appseng/en/knowledgebas...
It covers connecting through IWeb, but some of the concepts are very similar.

IWeb is very different from ISocket.

IWeb is very different from ISocket.