@@ -102,10 +102,11 @@ public void start() throws Exception {
102102 bcContext .init (kmf .getKeyManagers (), tmf .getTrustManagers (), null );
103103
104104 // Wrap Bouncy Castle Context in our programmatic PQC-enforcing context wrapper!
105- SSLContext sslContext = new SSLContext (
106- new PqcEnforcingSSLContextSpi (bcContext ),
107- bcContext .getProvider (),
108- bcContext .getProtocol ()) {};
105+ SSLContext sslContext =
106+ new SSLContext (
107+ new PqcEnforcingSSLContextSpi (bcContext ),
108+ bcContext .getProvider (),
109+ bcContext .getProtocol ()) {};
109110
110111 // 7. Instantiate a local mock HttpServer (bound to an ephemeral port 0).
111112 httpServer = HttpsServer .create (new InetSocketAddress (0 ), 0 );
@@ -304,41 +305,145 @@ public void setSSLParameters(javax.net.ssl.SSLParameters params) {
304305 if (objEngine instanceof org .bouncycastle .jsse .BCSSLEngine ) {
305306 org .bouncycastle .jsse .BCSSLEngine bcEngine = (org .bouncycastle .jsse .BCSSLEngine ) objEngine ;
306307 org .bouncycastle .jsse .BCSSLParameters bcParams = bcEngine .getParameters ();
307- bcParams .setNamedGroups (new String []{"X25519MLKEM768" });
308+ bcParams .setNamedGroups (new String [] {"X25519MLKEM768" });
308309 bcEngine .setParameters (bcParams );
309310 }
310311 }
311312
312- @ Override public javax .net .ssl .SSLParameters getSSLParameters () { return delegate .getSSLParameters (); }
313- @ Override public void beginHandshake () throws javax .net .ssl .SSLException { delegate .beginHandshake (); }
314- @ Override public void closeInbound () throws javax .net .ssl .SSLException { delegate .closeInbound (); }
315- @ Override public void closeOutbound () { delegate .closeOutbound (); }
316- @ Override public java .lang .Runnable getDelegatedTask () { return delegate .getDelegatedTask (); }
317- @ Override public java .lang .String [] getEnabledCipherSuites () { return delegate .getEnabledCipherSuites (); }
318- @ Override public java .lang .String [] getEnabledProtocols () { return delegate .getEnabledProtocols (); }
319- @ Override public javax .net .ssl .SSLEngineResult .HandshakeStatus getHandshakeStatus () { return delegate .getHandshakeStatus (); }
320- @ Override public boolean getNeedClientAuth () { return delegate .getNeedClientAuth (); }
321- @ Override public javax .net .ssl .SSLSession getSession () { return delegate .getSession (); }
322- @ Override public java .lang .String [] getSupportedCipherSuites () { return delegate .getSupportedCipherSuites (); }
323- @ Override public java .lang .String [] getSupportedProtocols () { return delegate .getSupportedProtocols (); }
324- @ Override public boolean getUseClientMode () { return delegate .getUseClientMode (); }
325- @ Override public boolean getWantClientAuth () { return delegate .getWantClientAuth (); }
326- @ Override public boolean isInboundDone () { return delegate .isInboundDone (); }
327- @ Override public boolean isOutboundDone () { return delegate .isOutboundDone (); }
328- @ Override public void setEnabledCipherSuites (java .lang .String [] suites ) { delegate .setEnabledCipherSuites (suites ); }
329- @ Override public void setEnabledProtocols (java .lang .String [] protocols ) { delegate .setEnabledProtocols (protocols ); }
330- @ Override public void setNeedClientAuth (boolean need ) { delegate .setNeedClientAuth (need ); }
331- @ Override public void setUseClientMode (boolean mode ) { delegate .setUseClientMode (mode ); }
332- @ Override public void setWantClientAuth (boolean want ) { delegate .setWantClientAuth (want ); }
333- @ Override public javax .net .ssl .SSLEngineResult unwrap (java .nio .ByteBuffer src , java .nio .ByteBuffer [] dsts , int offset , int length ) throws javax .net .ssl .SSLException { return delegate .unwrap (src , dsts , offset , length ); }
334- @ Override public javax .net .ssl .SSLEngineResult wrap (java .nio .ByteBuffer [] srcs , int offset , int length , java .nio .ByteBuffer dst ) throws javax .net .ssl .SSLException { return delegate .wrap (srcs , offset , length , dst ); }
313+ @ Override
314+ public javax .net .ssl .SSLParameters getSSLParameters () {
315+ return delegate .getSSLParameters ();
316+ }
317+
318+ @ Override
319+ public void beginHandshake () throws javax .net .ssl .SSLException {
320+ delegate .beginHandshake ();
321+ }
322+
323+ @ Override
324+ public void closeInbound () throws javax .net .ssl .SSLException {
325+ delegate .closeInbound ();
326+ }
327+
328+ @ Override
329+ public void closeOutbound () {
330+ delegate .closeOutbound ();
331+ }
332+
333+ @ Override
334+ public java .lang .Runnable getDelegatedTask () {
335+ return delegate .getDelegatedTask ();
336+ }
337+
338+ @ Override
339+ public java .lang .String [] getEnabledCipherSuites () {
340+ return delegate .getEnabledCipherSuites ();
341+ }
342+
343+ @ Override
344+ public java .lang .String [] getEnabledProtocols () {
345+ return delegate .getEnabledProtocols ();
346+ }
347+
348+ @ Override
349+ public javax .net .ssl .SSLEngineResult .HandshakeStatus getHandshakeStatus () {
350+ return delegate .getHandshakeStatus ();
351+ }
352+
353+ @ Override
354+ public boolean getNeedClientAuth () {
355+ return delegate .getNeedClientAuth ();
356+ }
357+
358+ @ Override
359+ public javax .net .ssl .SSLSession getSession () {
360+ return delegate .getSession ();
361+ }
362+
363+ @ Override
364+ public java .lang .String [] getSupportedCipherSuites () {
365+ return delegate .getSupportedCipherSuites ();
366+ }
367+
368+ @ Override
369+ public java .lang .String [] getSupportedProtocols () {
370+ return delegate .getSupportedProtocols ();
371+ }
372+
373+ @ Override
374+ public boolean getUseClientMode () {
375+ return delegate .getUseClientMode ();
376+ }
377+
378+ @ Override
379+ public boolean getWantClientAuth () {
380+ return delegate .getWantClientAuth ();
381+ }
382+
383+ @ Override
384+ public boolean isInboundDone () {
385+ return delegate .isInboundDone ();
386+ }
387+
388+ @ Override
389+ public boolean isOutboundDone () {
390+ return delegate .isOutboundDone ();
391+ }
392+
393+ @ Override
394+ public void setEnabledCipherSuites (java .lang .String [] suites ) {
395+ delegate .setEnabledCipherSuites (suites );
396+ }
397+
398+ @ Override
399+ public void setEnabledProtocols (java .lang .String [] protocols ) {
400+ delegate .setEnabledProtocols (protocols );
401+ }
402+
403+ @ Override
404+ public void setNeedClientAuth (boolean need ) {
405+ delegate .setNeedClientAuth (need );
406+ }
407+
408+ @ Override
409+ public void setUseClientMode (boolean mode ) {
410+ delegate .setUseClientMode (mode );
411+ }
412+
413+ @ Override
414+ public void setWantClientAuth (boolean want ) {
415+ delegate .setWantClientAuth (want );
416+ }
417+
418+ @ Override
419+ public javax .net .ssl .SSLEngineResult unwrap (
420+ java .nio .ByteBuffer src , java .nio .ByteBuffer [] dsts , int offset , int length )
421+ throws javax .net .ssl .SSLException {
422+ return delegate .unwrap (src , dsts , offset , length );
423+ }
424+
425+ @ Override
426+ public javax .net .ssl .SSLEngineResult wrap (
427+ java .nio .ByteBuffer [] srcs , int offset , int length , java .nio .ByteBuffer dst )
428+ throws javax .net .ssl .SSLException {
429+ return delegate .wrap (srcs , offset , length , dst );
430+ }
335431
336432 // Missing abstract methods
337- @ Override public boolean getEnableSessionCreation () { return delegate .getEnableSessionCreation (); }
338- @ Override public void setEnableSessionCreation (boolean flag ) { delegate .setEnableSessionCreation (flag ); }
433+ @ Override
434+ public boolean getEnableSessionCreation () {
435+ return delegate .getEnableSessionCreation ();
436+ }
339437
340- @ Override public javax .net .ssl .SSLSession getHandshakeSession () { return delegate .getHandshakeSession (); }
438+ @ Override
439+ public void setEnableSessionCreation (boolean flag ) {
440+ delegate .setEnableSessionCreation (flag );
441+ }
341442
443+ @ Override
444+ public javax .net .ssl .SSLSession getHandshakeSession () {
445+ return delegate .getHandshakeSession ();
446+ }
342447 }
343448
344449 private static class PqcEnforcingSSLContextSpi extends javax .net .ssl .SSLContextSpi {
@@ -379,7 +484,11 @@ protected javax.net.ssl.SSLSocketFactory engineGetSocketFactory() {
379484 }
380485
381486 @ Override
382- protected void engineInit (javax .net .ssl .KeyManager [] km , javax .net .ssl .TrustManager [] tm , java .security .SecureRandom sr ) throws java .security .KeyManagementException {
487+ protected void engineInit (
488+ javax .net .ssl .KeyManager [] km ,
489+ javax .net .ssl .TrustManager [] tm ,
490+ java .security .SecureRandom sr )
491+ throws java .security .KeyManagementException {
383492 // No-op because delegate is already initialized
384493 }
385494 }
0 commit comments