Advertisement
Guest User

Untitled

a guest
Jun 25th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.24 KB | None | 0 0
  1. SSL_CTX *ctxHSM1,*ctxHSM2;
  2. SSL *sslHSM1,*sslHSM2;
  3.  
  4. const SSL_METHOD *method;
  5. SSL_CTX *ctx;
  6. OpenSSL_add_all_algorithms(); /* Load cryptos, et.al. */
  7. SSL_load_error_strings(); /* Bring in and register error messages */
  8.  
  9. method = TLSv1_2_client_method(); /* Create new client-method instance */
  10. ctx = SSL_CTX_new((SSL_METHOD *)method); /* Create new context */
  11.  
  12. if (ctx == NULL) {
  13. ERR_print_errors_fp(stderr);
  14. abort();
  15. }
  16.  
  17.  
  18. SSL_CTX_set_default_passwd_cb_userdata(ctx,"Pass123!@#");
  19.  
  20. memset(LogStr,0x00,sizeof(LogStr));
  21. sprintf(LogStr,"CertFile[%s]KeyFile[%s]CAFile[%s]",CertFile,KeyFile,CAFile);
  22. LogMesgInLogFile(LogStr,IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  23.  
  24. /* set the local certificate from CertFile **/
  25. LogMesgInLogFile("INSIDE LOAD CER - CTX USE CERT",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  26. if (SSL_CTX_use_certificate_file(ctx, CertFile, SSL_FILETYPE_PEM) <= 0)
  27. {
  28. ERROR_SSL();
  29. ERR_print_errors_fp(stderr);
  30. return(FAILURE);
  31. }
  32. /* set the private key from KeyFile (may be the same as CertFile) */
  33. LogMesgInLogFile("INSIDE LOAD CER - CTX KEY FILE",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  34. if (SSL_CTX_use_PrivateKey_file(ctx, KeyFile, SSL_FILETYPE_PEM) <= 0)
  35. {
  36. ERR_print_errors_fp(stderr);
  37. return(FAILURE);
  38. }
  39.  
  40. LogMesgInLogFile("INSIDE LOAD CER - VERIFY CAFILE FILE",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  41. if (SSL_CTX_load_verify_locations(ctx, CAFile, CA_DIR) < 1)
  42. {
  43. ERROR_SSL();
  44. LogMesgInLogFile("Error Settinf Verify Location",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  45. return(FAILURE);
  46. }
  47.  
  48. /* verify private key */
  49. SSL_CTX_set_verify(ctx,SSL_VERIFY_PEER ,NULL);
  50. ERROR_SSL();
  51.  
  52. sslHSM1 = SSL_new(ctxHSM1);
  53. SSL_set_fd(sslHSM1,RacalPort1);
  54. if(SSL_connect(sslHSM1) == -1) /* perform the connection */
  55. {
  56. ERR_print_errors_fp(stderr);
  57. ERROR_SSL();
  58. LogMesgInLogFile("ERROR IN SSL HSM1 FED CONNECT",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
  59. return(FAILURE);
  60. }
  61. else
  62. LogMesgInLogFile("SSL HSM1 AFTER CONNECT SUCCESSFULLY",IGNORE_ERROR, LOG_AND_RETURN,0,LogFileName);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement