@@ -104,32 +104,34 @@ public WolfSSLContext(long method) throws WolfSSLException {
104104 *
105105 * @return pointer to native WOLFSSL_CTX structure for this object
106106 */
107- protected synchronized long getContextPtr () {
108- return sslCtxPtr ;
107+ protected long getContextPtr () {
108+ synchronized (this .ctxLock ) {
109+ return sslCtxPtr ;
110+ }
109111 }
110112
111113 /* used by JNI native recv Cb */
112- WolfSSLIORecvCallback getInternRecvCb () {
114+ synchronized WolfSSLIORecvCallback getInternRecvCb () {
113115 return internRecvCb ;
114116 }
115117
116118 /* used by JNI native send Cb */
117- WolfSSLIOSendCallback getInternSendCb () {
119+ synchronized WolfSSLIOSendCallback getInternSendCb () {
118120 return internSendCb ;
119121 }
120122
121123 /* used by JNI native cookie Cb */
122- WolfSSLGenCookieCallback getInternCookieCb () {
124+ synchronized WolfSSLGenCookieCallback getInternCookieCb () {
123125 return internCookieCb ;
124126 }
125127
126128 /* used by JNI native MAC/encrypt Cb */
127- WolfSSLMacEncryptCallback getInternMacEncryptCb () {
129+ synchronized WolfSSLMacEncryptCallback getInternMacEncryptCb () {
128130 return internMacEncryptCb ;
129131 }
130132
131133 /* used by JNI native decrypt/verify Cb */
132- WolfSSLDecryptVerifyCallback getInternDecryptVerifyCb () {
134+ synchronized WolfSSLDecryptVerifyCallback getInternDecryptVerifyCb () {
133135 return internDecryptVerifyCb ;
134136 }
135137
@@ -1127,7 +1129,7 @@ public int setGroupMessages() throws IllegalStateException {
11271129 * @throws WolfSSLJNIException Internal JNI error
11281130 * @see #setIOSend(WolfSSLIOSendCallback)
11291131 */
1130- public void setIORecv (WolfSSLIORecvCallback callback )
1132+ public synchronized void setIORecv (WolfSSLIORecvCallback callback )
11311133 throws IllegalStateException , WolfSSLJNIException {
11321134
11331135 confirmObjectIsActive ();
@@ -1161,7 +1163,7 @@ public void setIORecv(WolfSSLIORecvCallback callback)
11611163 * @throws WolfSSLJNIException Internal JNI error
11621164 * @see #setIORecv(WolfSSLIORecvCallback)
11631165 */
1164- public void setIOSend (WolfSSLIOSendCallback callback )
1166+ public synchronized void setIOSend (WolfSSLIOSendCallback callback )
11651167 throws IllegalStateException , WolfSSLJNIException {
11661168
11671169 confirmObjectIsActive ();
@@ -1195,7 +1197,7 @@ public void setIOSend(WolfSSLIOSendCallback callback)
11951197 * @throws IllegalStateException WolfSSLContext has been freed
11961198 * @throws WolfSSLJNIException Internal JNI error
11971199 */
1198- public void setGenCookie (WolfSSLGenCookieCallback callback )
1200+ public synchronized void setGenCookie (WolfSSLGenCookieCallback callback )
11991201 throws IllegalStateException , WolfSSLJNIException {
12001202
12011203 confirmObjectIsActive ();
@@ -1444,7 +1446,7 @@ public int setOCSPOverrideUrl(String url)
14441446 * @throws WolfSSLJNIException Internal JNI error
14451447 * @see #setDecryptVerifyCb(WolfSSLDecryptVerifyCallback)
14461448 */
1447- public void setMacEncryptCb (WolfSSLMacEncryptCallback callback )
1449+ public synchronized void setMacEncryptCb (WolfSSLMacEncryptCallback callback )
14481450 throws IllegalStateException , WolfSSLJNIException {
14491451
14501452 confirmObjectIsActive ();
@@ -1483,7 +1485,8 @@ public void setMacEncryptCb(WolfSSLMacEncryptCallback callback)
14831485 * @throws WolfSSLJNIException Internal JNI error
14841486 * @see #setMacEncryptCb(WolfSSLMacEncryptCallback)
14851487 */
1486- public void setDecryptVerifyCb (WolfSSLDecryptVerifyCallback callback )
1488+ public synchronized void setDecryptVerifyCb (
1489+ WolfSSLDecryptVerifyCallback callback )
14871490 throws IllegalStateException , WolfSSLJNIException {
14881491
14891492 confirmObjectIsActive ();
@@ -1519,7 +1522,7 @@ public void setDecryptVerifyCb(WolfSSLDecryptVerifyCallback callback)
15191522 * @throws WolfSSLJNIException Internal JNI error
15201523 * @see WolfSSLSession#setEccSignCtx(Object)
15211524 */
1522- public void setEccSignCb (WolfSSLEccSignCallback callback )
1525+ public synchronized void setEccSignCb (WolfSSLEccSignCallback callback )
15231526 throws IllegalStateException , WolfSSLJNIException {
15241527
15251528 confirmObjectIsActive ();
@@ -1555,7 +1558,7 @@ public void setEccSignCb(WolfSSLEccSignCallback callback)
15551558 * @throws WolfSSLJNIException Internal JNI error
15561559 * @see WolfSSLSession#setEccVerifyCtx(Object)
15571560 */
1558- public void setEccVerifyCb (WolfSSLEccVerifyCallback callback )
1561+ public synchronized void setEccVerifyCb (WolfSSLEccVerifyCallback callback )
15591562 throws IllegalStateException , WolfSSLJNIException {
15601563
15611564 confirmObjectIsActive ();
@@ -1606,7 +1609,8 @@ public void setEccVerifyCb(WolfSSLEccVerifyCallback callback)
16061609 * @see WolfSSLSession#setEccSignCtx(Object)
16071610 * @see WolfSSLSession#setEccVerifyCtx(Object)
16081611 */
1609- public void setEccSharedSecretCb (WolfSSLEccSharedSecretCallback callback )
1612+ public synchronized void setEccSharedSecretCb (
1613+ WolfSSLEccSharedSecretCallback callback )
16101614 throws IllegalStateException , WolfSSLJNIException {
16111615
16121616 confirmObjectIsActive ();
@@ -1642,7 +1646,7 @@ public void setEccSharedSecretCb(WolfSSLEccSharedSecretCallback callback)
16421646 * @throws WolfSSLJNIException Internal JNI error
16431647 * @see WolfSSLSession#setRsaSignCtx(Object)
16441648 */
1645- public void setRsaSignCb (WolfSSLRsaSignCallback callback )
1649+ public synchronized void setRsaSignCb (WolfSSLRsaSignCallback callback )
16461650 throws IllegalStateException , WolfSSLJNIException {
16471651
16481652 confirmObjectIsActive ();
@@ -1678,7 +1682,7 @@ public void setRsaSignCb(WolfSSLRsaSignCallback callback)
16781682 * @throws WolfSSLJNIException Internal JNI error
16791683 * @see WolfSSLSession#setRsaVerifyCtx(Object)
16801684 */
1681- public void setRsaVerifyCb (WolfSSLRsaVerifyCallback callback )
1685+ public synchronized void setRsaVerifyCb (WolfSSLRsaVerifyCallback callback )
16821686 throws IllegalStateException , WolfSSLJNIException {
16831687
16841688 confirmObjectIsActive ();
@@ -1714,7 +1718,7 @@ public void setRsaVerifyCb(WolfSSLRsaVerifyCallback callback)
17141718 * @throws WolfSSLJNIException Internal JNI exception
17151719 * @see WolfSSLSession#setRsaEncCtx(Object)
17161720 */
1717- public void setRsaEncCb (WolfSSLRsaEncCallback callback )
1721+ public synchronized void setRsaEncCb (WolfSSLRsaEncCallback callback )
17181722 throws IllegalStateException , WolfSSLJNIException {
17191723
17201724 confirmObjectIsActive ();
@@ -1749,7 +1753,7 @@ public void setRsaEncCb(WolfSSLRsaEncCallback callback)
17491753 * @throws WolfSSLJNIException Internal JNI error
17501754 * @see WolfSSLSession#setRsaDecCtx(Object)
17511755 */
1752- public void setRsaDecCb (WolfSSLRsaDecCallback callback )
1756+ public synchronized void setRsaDecCb (WolfSSLRsaDecCallback callback )
17531757 throws IllegalStateException , WolfSSLJNIException {
17541758
17551759 confirmObjectIsActive ();
@@ -1788,7 +1792,7 @@ public void setRsaDecCb(WolfSSLRsaDecCallback callback)
17881792 * @see WolfSSLSession#getPskIdentityHint()
17891793 * @see WolfSSLSession#usePskIdentityHint(String)
17901794 */
1791- public void setPskClientCb (WolfSSLPskClientCallback callback )
1795+ public synchronized void setPskClientCb (WolfSSLPskClientCallback callback )
17921796 throws IllegalStateException , WolfSSLJNIException {
17931797
17941798 confirmObjectIsActive ();
@@ -1826,7 +1830,7 @@ public void setPskClientCb(WolfSSLPskClientCallback callback)
18261830 * @see WolfSSLSession#getPskIdentityHint()
18271831 * @see WolfSSLSession#usePskIdentityHint(String)
18281832 */
1829- public void setPskServerCb (WolfSSLPskServerCallback callback )
1833+ public synchronized void setPskServerCb (WolfSSLPskServerCallback callback )
18301834 throws IllegalStateException , WolfSSLJNIException {
18311835
18321836 confirmObjectIsActive ();
0 commit comments