Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jetty-users] (LONG - Contains debugging info!) Re: Jetty SNI - Where's ExtendedSslContextFactory?

Am 02.08.2015 12:27 vorm. schrieb Steve Sobol - Lobos Studios <steve@xxxxxxxxxxxxxxxx>:
>
> It occurs to me that if I'm going to complain about SNI not working properly, I should share my logs with y'all! :)
>
> Also, looking at bug 430951, I didn't use generic hostnames when tracking down problems during testing, so I won't here, either.
>
> I know my SSL certificates are ok because they worked with Jetty during testing of 430951, and two of them are in place and working on the same live Apache server right now (I'm going to take those two sites, which are currently running PHP, and rewrite them in Java).
>
> I'm testing with admin.bamidbarconnect.com and remotehelp.lobosstudios.com. admin.bamidbarconnect is the first key I placed in the keystore.
>
> For testing purposes, I edited the Hosts file on my computer to point both admin.bamidbarconnect.com and remotehelp.lobosstudios.com at a server I set up specifically for testing. It's a Linux server running the latest version of Jetty and the latest Java 8 VM.
>

Regarding the bad certificate error: did you try to run jetty with -Djavax.net.debug=all ?

You may see what's wrong in the logs with the additional debugging turned on.

See also here for more info:
http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/ReadDebug.html

> At startup:
>
> 2015-08-01 13:03:31.355:DBUG:oejuc.AbstractLifeCycle:main: starting SslConnectionFactory@34340fab{SSL->http/1.1}
> 2015-08-01 13:03:31.355:DBUG:oejuc.AbstractLifeCycle:main: starting SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.432:DBUG:oejus.SslContextFactory:main: Certificate SAN alias=admin.bamidbarconnect.com cn=admin.bamidbarconnect.com in SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.434:DBUG:oejus.SslContextFactory:main: Certificate SAN alias=admin.bamidbarconnect.com cn=www.admin.bamidbarconnect.com in SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.435:DBUG:oejus.SslContextFactory:main: Certificate SAN alias=remotehelp.lobosstudios.com cn=remotehelp.lobosstudios.com in SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.435:DBUG:oejus.SslContextFactory:main: Certificate SAN alias=remotehelp.lobosstudios.com cn=www.remotehelp.lobosstudios.com in SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.436:INFO:oejus.SslContextFactory:main: x509={admin.bamidbarconnect.com=admin.bamidbarconnect.com, www.admin.bamidbarconnect.com=admin.bamidbarconnect.com, remotehelp.lobosstudios.com=remotehelp.lobosstudios.com, www.remotehelp.lobosstudios.com=remotehelp.lobosstudios.com} wild={} alias=null for SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
> 2015-08-01 13:03:31.525:DBUG:oejus.SslContextFactory:main: managers=[Ljavax.net.ssl.KeyManager;@1a8a8f7c for SslContextFactory@6a38e57f(file:///home/sjsobol/jettybase/keystores/test.jks,null)
>
> The VM and Jetty are finding both certs. I'm using Comodo domain-validation-only certs - and they aren't wildcard certs - but Comodo sets up the certs to match both someHostname.someDomain.whatever, AND www.someHostname.someDomain.whatever, as you can see from the preceding log snippet.
>
> This is what happens when I try admin.bamidbarconnect.com:
>
> 2015-08-01 13:03:36.076:DBUG:oejus.SslContextFactory:qtp971848845-28: matches=type=host_name (0), value=admin.bamidbarconnect.com for org.eclipse.jetty.util.ssl.SslContextFactory$AliasSNIMatcher@1bf95388
> 2015-08-01 13:03:36.076:DBUG:oejus.SslContextFactory:qtp971848845-28: matched admin.bamidbarconnect.com->admin.bamidbarconnect.com
> 2015-08-01 13:03:36.137:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=249 unwrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.142:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.142:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} flush b[0]=
> 2015-08-01 13:03:36.142:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/15576,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 1832
> 2015-08-01 13:03:36.149:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/1832,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[1832]=160303072302000051030355BCFBE83375321ECF6D406B7721...8C80230E000000
> 2015-08-01 13:03:36.150:DBUG:oeji.ChannelEndPoint:qtp971848845-28: flushed 1832 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,99/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.150:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=249 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.152:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.152:DBUG:oeji.ChannelEndPoint:qtp971848845-28: filled 0 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,2/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.153:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.153:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.153:DBUG:oeji.ChannelEndPoint:qtp971848845-28: filled 0 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,3/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.153:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.154:DBUG:oejis.SslConnection:qtp971848845-28: SslConnection@1c04b6c1{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.155:DBUG:oejs.HttpConnection:qtp971848845-28: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled 0
> 2015-08-01 13:03:36.155:DBUG:oejs.HttpConnection:qtp971848845-28: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parse HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} {}
> 2015-08-01 13:03:36.155:DBUG:oejh.HttpParser:qtp971848845-28: parseNext s=START HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.155:DBUG:oejs.HttpConnection:qtp971848845-28: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parsed false HttpParser{s=START,0 of 0}
> 2015-08-01 13:03:36.156:DBUG:oejs.HttpConnection:qtp971848845-28: releaseRequestBuffer HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.156:DBUG:oeji.AbstractConnection:qtp971848845-28: fillInterested HttpConnection@4f5f2bfc<--null
> 2015-08-01 13:03:36.156:DBUG:oeji.FillInterest:qtp971848845-28: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.156:DBUG:oeji.FillInterest:qtp971848845-28: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.157:DBUG:oeji.AbstractConnection:qtp971848845-28: fillInterested SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null
> 2015-08-01 13:03:36.157:DBUG:oeji.FillInterest:qtp971848845-28: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.158:DBUG:oeji.FillInterest:qtp971848845-28: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.158:DBUG:oeji.SelectChannelEndPoint:qtp971848845-28: changeInterests p=false 0->1 for SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,1/30000,SslConnection}{io=0/1,kio=0,kro=1}
> 2015-08-01 13:03:36.158:DBUG:oeji.ManagedSelector:qtp971848845-28: Queued change org.eclipse.jetty.io.SelectChannelEndPoint$1@72bc682e on org.eclipse.jetty.io.ManagedSelector@52feb982 id=0 keys=1 selected=0
> 2015-08-01 13:03:36.158:DBUG:oeji.ManagedSelector:qtp971848845-29: Selector loop woken up from select, 0/1 selected
> 2015-08-01 13:03:36.158:DBUG:oeji.ManagedSelector:qtp971848845-29: Running change org.eclipse.jetty.io.SelectChannelEndPoint$1@72bc682e
> 2015-08-01 13:03:36.158:DBUG:oeji.SelectChannelEndPoint:qtp971848845-29: Key interests updated 0 -> 1 on SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,2/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:36.159:DBUG:oeji.ManagedSelector:qtp971848845-29: Selector loop waiting on select
> 2015-08-01 13:03:36.159:DBUG:oejs.HttpConnection:qtp971848845-28: HttpConnection@4f5f2bfc<--null onFillable exit HttpChannelState@790c38d1{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:36.160:DBUG:oejis.SslConnection:qtp971848845-28: onFillable exit DecryptedEndPoint@43e82494{/108.38.81.155:55117<->8503,Open,in,out,R,-,4/30000,HttpConnection}->SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,3/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:36.160:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-28: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc ran org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.160:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-28: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce exit
> 2015-08-01 13:03:36.160:DBUG:oejut.QueuedThreadPool:qtp971848845-28: ran EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.246:DBUG:oeji.ManagedSelector:qtp971848845-29: Selector loop woken up from select, 1/1 selected
> 2015-08-01 13:03:36.246:DBUG:oeji.SelectChannelEndPoint:qtp971848845-29: onSelected 1->0 for SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,89/30000,SslConnection}{io=1/0,kio=1,kro=1}
> 2015-08-01 13:03:36.246:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-29: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produced org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.246:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-29: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc dispatch
> 2015-08-01 13:03:36.246:DBUG:oejut.QueuedThreadPool:qtp971848845-29: queue EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.246:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-29: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.246:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} fillable AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.246:DBUG:oejis.SslConnection:qtp971848845-29: onFillable enter DecryptedEndPoint@43e82494{/108.38.81.155:55117<->8503,Open,in,out,R,-,90/30000,HttpConnection}->SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,89/30000,SslConnection}{io=1/0,kio=1,kro=1}
> 2015-08-01 13:03:36.247:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} fillable AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.247:DBUG:oejs.HttpConnection:qtp971848845-29: HttpConnection@4f5f2bfc<--null onFillable enter HttpChannelState@790c38d1{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:36.248:DBUG:oejut.QueuedThreadPool:qtp971848845-30: run EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.248:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run
> 2015-08-01 13:03:36.248:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce enter
> 2015-08-01 13:03:36.248:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc producing
> 2015-08-01 13:03:36.248:DBUG:oeji.SelectChannelEndPoint:qtp971848845-30: Key interests updated 1 -> 0 on SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,91/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.248:DBUG:oeji.ManagedSelector:qtp971848845-30: Selector loop waiting on select
> 2015-08-01 13:03:36.249:DBUG:oeji.ChannelEndPoint:qtp971848845-29: filled 150 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,92/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.249:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_TASK,eio=75/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=150 unwrap Status = OK HandshakeStatus = NEED_TASK bytesConsumed = 75 bytesProduced = 0
> 2015-08-01 13:03:36.250:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_TASK,eio=75/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.267:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_UNWRAP,eio=69/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=150 unwrap Status = OK HandshakeStatus = NEED_UNWRAP bytesConsumed = 6 bytesProduced = 0
> 2015-08-01 13:03:36.267:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_UNWRAP,eio=69/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.271:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=150 unwrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 69 bytesProduced = 0
> 2015-08-01 13:03:36.271:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.271:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} flush b[0]=
> 2015-08-01 13:03:36.272:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_WRAP,eio=0/17402,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 0 bytesProduced = 6
> 2015-08-01 13:03:36.272:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NEED_WRAP,eio=0/6,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[6]=140303000101
> 2015-08-01 13:03:36.272:DBUG:oeji.ChannelEndPoint:qtp971848845-29: flushed 6 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,23/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.272:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/17339,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = FINISHED bytesConsumed = 0 bytesProduced = 69
> 2015-08-01 13:03:36.273:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/69,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[69]=1603030040CD931EF3AF55AFF12029FAD56B5F68BEEC8F3F9D...A77046FA5B5493
> 2015-08-01 13:03:36.273:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/69,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} server handshook complete TLSv1.2/TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
> 2015-08-01 13:03:36.273:DBUG:oeji.ChannelEndPoint:qtp971848845-29: flushed 69 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,1/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.276:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=150 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.277:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.277:DBUG:oeji.ChannelEndPoint:qtp971848845-29: filled 0 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,1/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.277:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.277:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.277:DBUG:oeji.ChannelEndPoint:qtp971848845-29: filled 0 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,1/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.279:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:36.279:DBUG:oejis.SslConnection:qtp971848845-29: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:36.279:DBUG:oejs.HttpConnection:qtp971848845-29: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled 0
> 2015-08-01 13:03:36.279:DBUG:oejs.HttpConnection:qtp971848845-29: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parse HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} {}
> 2015-08-01 13:03:36.281:DBUG:oejh.HttpParser:qtp971848845-29: parseNext s=START HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.281:DBUG:oejs.HttpConnection:qtp971848845-29: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parsed false HttpParser{s=START,0 of 0}
> 2015-08-01 13:03:36.283:DBUG:oejs.HttpConnection:qtp971848845-29: releaseRequestBuffer HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.283:DBUG:oeji.AbstractConnection:qtp971848845-29: fillInterested HttpConnection@4f5f2bfc<--null
> 2015-08-01 13:03:36.283:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.283:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.284:DBUG:oeji.AbstractConnection:qtp971848845-29: fillInterested SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null
> 2015-08-01 13:03:36.284:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.284:DBUG:oeji.FillInterest:qtp971848845-29: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} register AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.284:DBUG:oeji.SelectChannelEndPoint:qtp971848845-29: changeInterests p=false 0->1 for SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,0/30000,SslConnection}{io=0/1,kio=0,kro=1}
> 2015-08-01 13:03:36.285:DBUG:oeji.ManagedSelector:qtp971848845-29: Queued change org.eclipse.jetty.io.SelectChannelEndPoint$1@72bc682e on org.eclipse.jetty.io.ManagedSelector@52feb982 id=0 keys=1 selected=0
> 2015-08-01 13:03:36.285:DBUG:oeji.ManagedSelector:qtp971848845-30: Selector loop woken up from select, 0/1 selected
> 2015-08-01 13:03:36.285:DBUG:oeji.ManagedSelector:qtp971848845-30: Running change org.eclipse.jetty.io.SelectChannelEndPoint$1@72bc682e
> 2015-08-01 13:03:36.285:DBUG:oeji.SelectChannelEndPoint:qtp971848845-30: Key interests updated 0 -> 1 on SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,1/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:36.285:DBUG:oeji.ManagedSelector:qtp971848845-30: Selector loop waiting on select
> 2015-08-01 13:03:36.285:DBUG:oejs.HttpConnection:qtp971848845-29: HttpConnection@4f5f2bfc<--null onFillable exit HttpChannelState@790c38d1{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:36.285:DBUG:oejis.SslConnection:qtp971848845-29: onFillable exit DecryptedEndPoint@43e82494{/108.38.81.155:55117<->8503,Open,in,out,R,-,2/30000,HttpConnection}->SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,1/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:36.286:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-29: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc ran org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.286:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-29: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce exit
> 2015-08-01 13:03:36.286:DBUG:oejut.QueuedThreadPool:qtp971848845-29: ran EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.356:DBUG:oeju.Scanner:Scanner-1: scan accepted /home/sjsobol/jettybase/webapps-8503/test.xml
> 2015-08-01 13:03:36.356:DBUG:oeju.Scanner:Scanner-1: scan accepted /home/sjsobol/jettybase/webapps-8503/test2.xml
> 2015-08-01 13:03:36.357:DBUG:oeju.Scanner:Scanner-1: scanned [/home/sjsobol/jettybase/webapps-8503]: {}
> 2015-08-01 13:03:36.358:DBUG:oeji.ManagedSelector:qtp971848845-30: Selector loop woken up from select, 1/1 selected
> 2015-08-01 13:03:36.359:DBUG:oeji.SelectChannelEndPoint:qtp971848845-30: onSelected 1->0 for SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,R,-,75/30000,SslConnection}{io=1/0,kio=1,kro=1}
> 2015-08-01 13:03:36.359:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produced org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.359:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc dispatch
> 2015-08-01 13:03:36.359:DBUG:oejut.QueuedThreadPool:qtp971848845-30: queue EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.359:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-30: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run org.eclipse.jetty.io.SelectChannelEndPoint$2@65637775
> 2015-08-01 13:03:36.359:DBUG:oeji.FillInterest:qtp971848845-30: FillInterest@440abb98{true,AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}} fillable AC.ReadCB@1c04b6c1{SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.359:DBUG:oejis.SslConnection:qtp971848845-30: onFillable enter DecryptedEndPoint@43e82494{/108.38.81.155:55117<->8503,Open,in,out,R,-,76/30000,HttpConnection}->SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,75/30000,SslConnection}{io=1/0,kio=1,kro=1}
> 2015-08-01 13:03:36.359:DBUG:oeji.FillInterest:qtp971848845-30: FillInterest@5c03ab64{true,AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}} fillable AC.ReadCB@4f5f2bfc{HttpConnection@4f5f2bfc<--null}
> 2015-08-01 13:03:36.359:DBUG:oejs.HttpConnection:qtp971848845-30: HttpConnection@4f5f2bfc<--null onFillable enter HttpChannelState@790c38d1{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:36.360:DBUG:oejut.QueuedThreadPool:qtp971848845-31: run EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:36.360:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-31: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run
> 2015-08-01 13:03:36.360:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-31: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce enter
> 2015-08-01 13:03:36.360:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-31: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc producing
> 2015-08-01 13:03:36.360:DBUG:oeji.SelectChannelEndPoint:qtp971848845-31: Key interests updated 1 -> 0 on SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,76/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.360:DBUG:oeji.ManagedSelector:qtp971848845-31: Selector loop waiting on select
> 2015-08-01 13:03:36.362:DBUG:oeji.ChannelEndPoint:qtp971848845-30: filled 373 SelectChannelEndPoint@67b4c44c{/108.38.81.155:55117<->8503,Open,in,out,-,-,78/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:36.363:DBUG:oejis.SslConnection:qtp971848845-30: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=373 unwrap Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 373 bytesProduced = 330
> 2015-08-01 13:03:36.365:DBUG:oejis.SslConnection:qtp971848845-30: SslConnection@1c04b6c1{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[330]=474554202F20485454502F312E310D0A486F73743A2061646D...653D300D0A0D0A
> 2015-08-01 13:03:36.365:DBUG:oejs.HttpConnection:qtp971848845-30: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled 330
> 2015-08-01 13:03:36.365:DBUG:oejs.HttpConnection:qtp971848845-30: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parse HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} {}
> 2015-08-01 13:03:36.365:DBUG:oejh.HttpParser:qtp971848845-30: parseNext s=START HeapByteBuffer@6ba495a9[p=0,l=330,c=17408,r=330]={<<<GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.366:DBUG:oejh.HttpParser:qtp971848845-30: START --> SPACE1
> 2015-08-01 13:03:36.367:DBUG:oejh.HttpParser:qtp971848845-30: SPACE1 --> URI
> 2015-08-01 13:03:36.367:DBUG:oejh.HttpParser:qtp971848845-30: URI --> SPACE2
> 2015-08-01 13:03:36.367:DBUG:oejh.HttpParser:qtp971848845-30: SPACE2 --> REQUEST_VERSION
> 2015-08-01 13:03:36.367:DBUG:oejh.HttpParser:qtp971848845-30: REQUEST_VERSION --> HEADER
> 2015-08-01 13:03:36.368:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:36.368:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.370:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:36.371:DBUG:oejh.HttpParser:qtp971848845-30: HEADER --> END
> 2015-08-01 13:03:36.372:DBUG:oejs.HttpChannel:qtp971848845-30: HttpChannelOverHttp@5679ef73{r=1,c=false,a=IDLE,uri=-} onRequestComplete
> 2015-08-01 13:03:36.372:DBUG:oejs.HttpInput:qtp971848845-30: org.eclipse.jetty.server.HttpInputOverHTTP@2293da41 addContent EOF
> 2015-08-01 13:03:36.372:DBUG:oejs.HttpConnection:qtp971848845-30: HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=330,l=330,c=17408,r=0]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parsed true HttpParser{s=END,0 of 0}
> 2015-08-01 13:03:36.372:DBUG:oejs.HttpConnection:qtp971848845-30: releaseRequestBuffer HttpConnection@4f5f2bfc<--HeapByteBuffer@6ba495a9[p=330,l=330,c=17408,r=0]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<>>>\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:36.372:DBUG:oejs.HttpChannel:qtp971848845-30: HttpChannelOverHttp@5679ef73{r=1,c=false,a=IDLE,uri=-} handle //admin.bamidbarconnect.com:8503/ 
> 2015-08-01 13:03:36.373:DBUG:oejs.HttpChannelState:qtp971848845-30: HttpChannelState@790c38d1{s=IDLE a=null i=true r=!P!U w=false} handling IDLE
> 2015-08-01 13:03:36.374:DBUG:oejs.HttpChannel:qtp971848845-30: HttpChannelOverHttp@5679ef73{r=1,c=false,a=DISPATCHED,uri=/} action REQUEST_DISPATCH
> 2015-08-01 13:03:36.376:DBUG:oejs.Server:qtp971848845-30: REQUEST on HttpChannelOverHttp@5679ef73{r=1,c=false,a=DISPATCHED,uri=/}
> GET https://admin.bamidbarconnect.com:8503/
> Host: admin.bamidbarconnect.com:8503
> User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Language: en-US,en;q=0.5
> Accept-Encoding: gzip, deflate
> Connection: keep-alive
> Cache-Control: max-age=0
>
> So, as you can see, Jetty finds the correct certificate, decodes the headers and goes on its merry way. Everyone's happy.
>
> Now, when I try to pull up the other site, Jetty still finds the correct certificate but things break down somewhere... and Firefox complains that although I'm trying to pull up the site at remotehelp.lobosstudios.com, the certificate is a certificate for admin.bamidbarconnect.com:
>
> 2015-08-01 13:03:40.311:DBUG:oejus.SslContextFactory:qtp971848845-23: matches=type=host_name (0), value=remotehelp.lobosstudios.com for org.eclipse.jetty.util.ssl.SslContextFactory$AliasSNIMatcher@13565996
> 2015-08-01 13:03:40.317:DBUG:oejus.SslContextFactory:qtp971848845-23: matched remotehelp.lobosstudios.com->remotehelp.lobosstudios.com
> 2015-08-01 13:03:40.394:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=219 unwrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:40.395:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.397:DBUG:oeju.Scanner:Scanner-1: scan accepted /home/sjsobol/jettybase/webapps-8503/test.xml
> 2015-08-01 13:03:40.397:DBUG:oeju.Scanner:Scanner-1: scan accepted /home/sjsobol/jettybase/webapps-8503/test2.xml
> 2015-08-01 13:03:40.397:DBUG:oeju.Scanner:Scanner-1: scanned [/home/sjsobol/jettybase/webapps-8503]: {}
> 2015-08-01 13:03:40.396:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_WRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} flush b[0]=
> 2015-08-01 13:03:40.398:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/15576,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 1832
> 2015-08-01 13:03:40.399:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/1832,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[1832]=160303072302000051030355BCFBECACF760E135B5D6802805...392D6B0E000000
> 2015-08-01 13:03:40.399:DBUG:oeji.ChannelEndPoint:qtp971848845-23: flushed 1832 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,90/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.400:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=219 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:40.400:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.401:DBUG:oeji.ChannelEndPoint:qtp971848845-23: filled 0 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,1/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.401:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:40.402:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.402:DBUG:oeji.ChannelEndPoint:qtp971848845-23: filled 0 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,2/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.402:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=0 unwrap Status = BUFFER_UNDERFLOW HandshakeStatus = NEED_UNWRAP bytesConsumed = 0 bytesProduced = 0
> 2015-08-01 13:03:40.403:DBUG:oejis.SslConnection:qtp971848845-23: SslConnection@31c992f{NEED_UNWRAP,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.403:DBUG:oejs.HttpConnection:qtp971848845-23: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled 0
> 2015-08-01 13:03:40.404:DBUG:oejs.HttpConnection:qtp971848845-23: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parse HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} {}
> 2015-08-01 13:03:40.404:DBUG:oejh.HttpParser:qtp971848845-23: parseNext s=START HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:40.404:DBUG:oejs.HttpConnection:qtp971848845-23: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parsed false HttpParser{s=START,0 of 0}
> 2015-08-01 13:03:40.404:DBUG:oejs.HttpConnection:qtp971848845-23: releaseRequestBuffer HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:40.405:DBUG:oeji.AbstractConnection:qtp971848845-23: fillInterested HttpConnection@250d8672<--null
> 2015-08-01 13:03:40.409:DBUG:oeji.FillInterest:qtp971848845-23: FillInterest@1c657e22{true,AC.ReadCB@250d8672{HttpConnection@250d8672<--null}} register AC.ReadCB@250d8672{HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.410:DBUG:oeji.FillInterest:qtp971848845-23: FillInterest@1c657e22{true,AC.ReadCB@250d8672{HttpConnection@250d8672<--null}} register AC.ReadCB@250d8672{HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.411:DBUG:oeji.AbstractConnection:qtp971848845-23: fillInterested SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null
> 2015-08-01 13:03:40.411:DBUG:oeji.FillInterest:qtp971848845-23: FillInterest@68b46aa4{true,AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}} register AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.412:DBUG:oeji.FillInterest:qtp971848845-23: FillInterest@68b46aa4{true,AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}} register AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.412:DBUG:oeji.SelectChannelEndPoint:qtp971848845-23: changeInterests p=false 0->1 for SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,R,-,2/30000,SslConnection}{io=0/1,kio=0,kro=1}
> 2015-08-01 13:03:40.413:DBUG:oeji.ManagedSelector:qtp971848845-23: Queued change org.eclipse.jetty.io.SelectChannelEndPoint$1@21435fd6 on org.eclipse.jetty.io.ManagedSelector@52feb982 id=0 keys=2 selected=0
> 2015-08-01 13:03:40.413:DBUG:oeji.ManagedSelector:qtp971848845-22: Selector loop woken up from select, 0/2 selected
> 2015-08-01 13:03:40.413:DBUG:oeji.ManagedSelector:qtp971848845-22: Running change org.eclipse.jetty.io.SelectChannelEndPoint$1@21435fd6
> 2015-08-01 13:03:40.414:DBUG:oeji.SelectChannelEndPoint:qtp971848845-22: Key interests updated 0 -> 1 on SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,R,-,3/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:40.414:DBUG:oeji.ManagedSelector:qtp971848845-22: Selector loop waiting on select
> 2015-08-01 13:03:40.414:DBUG:oejs.HttpConnection:qtp971848845-23: HttpConnection@250d8672<--null onFillable exit HttpChannelState@73b0e2a8{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:40.415:DBUG:oejis.SslConnection:qtp971848845-23: onFillable exit DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,Open,in,out,R,-,6/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,R,-,4/30000,SslConnection}{io=1/1,kio=1,kro=1}
> 2015-08-01 13:03:40.415:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-23: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc ran org.eclipse.jetty.io.SelectChannelEndPoint$2@1769cfa3
> 2015-08-01 13:03:40.415:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-23: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce exit
> 2015-08-01 13:03:40.416:DBUG:oejut.QueuedThreadPool:qtp971848845-23: ran EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.492:DBUG:oeji.ManagedSelector:qtp971848845-22: Selector loop woken up from select, 1/2 selected
> 2015-08-01 13:03:40.492:DBUG:oeji.SelectChannelEndPoint:qtp971848845-22: onSelected 1->0 for SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,R,-,81/30000,SslConnection}{io=1/0,kio=1,kro=1}
> 2015-08-01 13:03:40.492:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-22: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produced org.eclipse.jetty.io.SelectChannelEndPoint$2@1769cfa3
> 2015-08-01 13:03:40.492:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-22: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc dispatch
> 2015-08-01 13:03:40.493:DBUG:oejut.QueuedThreadPool:qtp971848845-22: queue EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.494:DBUG:oejut.QueuedThreadPool:qtp971848845-24: run EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.494:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run
> 2015-08-01 13:03:40.494:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce enter
> 2015-08-01 13:03:40.494:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc producing
> 2015-08-01 13:03:40.494:DBUG:oeji.SelectChannelEndPoint:qtp971848845-24: Key interests updated 1 -> 0 on SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,R,-,83/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.495:DBUG:oeji.ManagedSelector:qtp971848845-24: Selector loop waiting on select
> 2015-08-01 13:03:40.496:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-22: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run org.eclipse.jetty.io.SelectChannelEndPoint$2@1769cfa3
> 2015-08-01 13:03:40.496:DBUG:oeji.FillInterest:qtp971848845-22: FillInterest@68b46aa4{true,AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}} fillable AC.ReadCB@31c992f{SslConnection@31c992f{NEED_UNWRAP,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.497:DBUG:oejis.SslConnection:qtp971848845-22: onFillable enter DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,Open,in,out,R,-,89/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,87/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.498:DBUG:oeji.FillInterest:qtp971848845-22: FillInterest@1c657e22{true,AC.ReadCB@250d8672{HttpConnection@250d8672<--null}} fillable AC.ReadCB@250d8672{HttpConnection@250d8672<--null}
> 2015-08-01 13:03:40.499:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--null onFillable enter HttpChannelState@73b0e2a8{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:40.500:DBUG:oeji.ChannelEndPoint:qtp971848845-22: filled 203 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,89/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.502:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_TASK,eio=128/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=203 unwrap Status = OK HandshakeStatus = NEED_TASK bytesConsumed = 75 bytesProduced = 0
> 2015-08-01 13:03:40.502:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_TASK,eio=128/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.511:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_UNWRAP,eio=122/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=203 unwrap Status = OK HandshakeStatus = NEED_UNWRAP bytesConsumed = 6 bytesProduced = 0
> 2015-08-01 13:03:40.512:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_UNWRAP,eio=122/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.516:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_WRAP,eio=53/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} net=203 unwrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 69 bytesProduced = 0
> 2015-08-01 13:03:40.517:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_WRAP,eio=53/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} filled b[0]=
> 2015-08-01 13:03:40.517:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_WRAP,eio=53/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} flush b[0]=
> 2015-08-01 13:03:40.518:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_WRAP,eio=53/17402,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = NEED_WRAP bytesConsumed = 0 bytesProduced = 6
> 2015-08-01 13:03:40.518:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NEED_WRAP,eio=53/6,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[6]=140303000101
> 2015-08-01 13:03:40.519:DBUG:oeji.ChannelEndPoint:qtp971848845-22: flushed 6 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,18/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.520:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=53/17339,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap Status = OK HandshakeStatus = FINISHED bytesConsumed = 0 bytesProduced = 69
> 2015-08-01 13:03:40.527:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=53/69,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} wrap OK b[69]=16030300407CEE6D52AF587495A84F889B996804DE0A8B7324...A2D51AE9D57BEE
> 2015-08-01 13:03:40.528:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=53/69,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} server handshook complete TLSv1.2/TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
> 2015-08-01 13:03:40.528:DBUG:oeji.ChannelEndPoint:qtp971848845-22: flushed 69 SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,Open,in,out,-,-,8/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.532:DBUG:oeji.AbstractEndPoint:qtp971848845-22: onClose SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,in,out,-,-,4/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.533:DBUG:oeji.ChannelEndPoint:qtp971848845-22: close SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,in,out,-,-,5/30000,SslConnection}{io=0/0,kio=0,kro=1}
> 2015-08-01 13:03:40.535:DBUG:oeji.ManagedSelector:qtp971848845-22: Queued change org.eclipse.jetty.io.ManagedSelector$2@671ddd26 on org.eclipse.jetty.io.ManagedSelector@52feb982 id=0 keys=2 selected=0
> 2015-08-01 13:03:40.536:DBUG:oeji.ManagedSelector:qtp971848845-24: Selector loop woken up from select, 0/1 selected
> 2015-08-01 13:03:40.536:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produced org.eclipse.jetty.io.ManagedSelector$2@671ddd26
> 2015-08-01 13:03:40.536:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc dispatch
> 2015-08-01 13:03:40.536:DBUG:oejut.QueuedThreadPool:qtp971848845-24: queue EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.536:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run org.eclipse.jetty.io.ManagedSelector$2@671ddd26
> 2015-08-01 13:03:40.536:DBUG:oeji.ManagedSelector:qtp971848845-24: Destroyed SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,8/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.537:DBUG:oeji.AbstractConnection:qtp971848845-24: onClose HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=17408,c=17408,r=17408]={<<<GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>}
> 2015-08-01 13:03:40.537:DBUG:oeji.AbstractConnection:qtp971848845-24: onClose SslConnection@31c992f{NOT_HANDSHAKING,eio=0/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=17408,c=17408,r=17408]={<<<GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>}
> 2015-08-01 13:03:40.539:DBUG:oejut.QueuedThreadPool:qtp971848845-25: run EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.539:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-25: EPR Pend/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc run
> 2015-08-01 13:03:40.539:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-25: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce enter
> 2015-08-01 13:03:40.539:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-25: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc producing
> 2015-08-01 13:03:40.539:DBUG:oeji.ManagedSelector:qtp971848845-25: Selector loop waiting on select
> 2015-08-01 13:03:40.540:DBUG:oeji.AbstractEndPoint:qtp971848845-24: onClose SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,12/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.541:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc ran org.eclipse.jetty.io.ManagedSelector$2@671ddd26
> 2015-08-01 13:03:40.541:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-24: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce exit
> 2015-08-01 13:03:40.541:DBUG:oejut.QueuedThreadPool:qtp971848845-24: ran EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc
> 2015-08-01 13:03:40.541:DBUG:oejs.HttpConnection:qtp971848845-22: 
> javax.net.ssl.SSLException: Received fatal alert: bad_certificate
>     at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
>     at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
>     at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
>     at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800)
>     at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1083)
>     at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
>     at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
>     at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
>     at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.fill(SslConnection.java:506)
>     at org.eclipse.jetty.server.HttpConnection.fillRequestBuffer(HttpConnection.java:315)
>     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:223)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:192)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:57)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>     at java.lang.Thread.run(Thread.java:745)
> 2015-08-01 13:03:40.547:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=17408,c=17408,r=17408]={<<<GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} parse HeapByteBuffer@6ba495a9[p=0,l=17408,c=17408,r=17408]={<<<GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} {}
> 2015-08-01 13:03:40.548:DBUG:oejh.HttpParser:qtp971848845-22: parseNext s=START HeapByteBuffer@6ba495a9[p=0,l=17408,c=17408,r=17408]={<<<GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>}
> 2015-08-01 13:03:40.548:DBUG:oejh.HttpParser:qtp971848845-22: START --> SPACE1
> 2015-08-01 13:03:40.548:DBUG:oejh.HttpParser:qtp971848845-22: SPACE1 --> URI
> 2015-08-01 13:03:40.548:DBUG:oejh.HttpParser:qtp971848845-22: URI --> SPACE2
> 2015-08-01 13:03:40.549:DBUG:oejh.HttpParser:qtp971848845-22: SPACE2 --> REQUEST_VERSION
> 2015-08-01 13:03:40.549:DBUG:oejh.HttpParser:qtp971848845-22: REQUEST_VERSION --> HEADER
> 2015-08-01 13:03:40.549:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:40.550:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.550:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.550:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:40.551:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.553:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.553:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.553:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.554:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.554:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.554:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.554:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.555:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.555:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.555:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> HEADER_VALUE
> 2015-08-01 13:03:40.558:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_VALUE --> HEADER_IN_VALUE
> 2015-08-01 13:03:40.559:DBUG:oejh.HttpParser:qtp971848845-22: HEADER_IN_VALUE --> HEADER
> 2015-08-01 13:03:40.559:DBUG:oejh.HttpParser:qtp971848845-22: HEADER --> END
> 2015-08-01 13:03:40.559:DBUG:oejs.HttpChannel:qtp971848845-22: HttpChannelOverHttp@742d796f{r=1,c=false,a=IDLE,uri=-} onRequestComplete
> 2015-08-01 13:03:40.560:DBUG:oejs.HttpInput:qtp971848845-22: org.eclipse.jetty.server.HttpInputOverHTTP@541b71aa addContent EOF
> 2015-08-01 13:03:40.560:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=330,l=17408,c=17408,r=17078]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} parsed true HttpParser{s=END,0 of 0}
> 2015-08-01 13:03:40.561:DBUG:oejs.HttpChannel:qtp971848845-22: HttpChannelOverHttp@742d796f{r=1,c=false,a=IDLE,uri=-} handle //admin.bamidbarconnect.com:8503/ 
> 2015-08-01 13:03:40.561:DBUG:oejs.HttpChannelState:qtp971848845-22: HttpChannelState@73b0e2a8{s=IDLE a=null i=true r=!P!U w=false} handling IDLE
> 2015-08-01 13:03:40.561:DBUG:oejs.HttpChannel:qtp971848845-22: HttpChannelOverHttp@742d796f{r=1,c=false,a=DISPATCHED,uri=/} action REQUEST_DISPATCH
> 2015-08-01 13:03:40.562:DBUG:oejs.Server:qtp971848845-22: REQUEST on HttpChannelOverHttp@742d796f{r=1,c=false,a=DISPATCHED,uri=/}
> GET https://admin.bamidbarconnect.com:8503/
> Host: admin.bamidbarconnect.com:8503
> User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:39.0) Gecko/20100101 Firefox/39.0
> Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
> Accept-Language: en-US,en;q=0.5
> Accept-Encoding: gzip, deflate
> Connection: keep-alive
> Cache-Control: max-age=0
>
>
> 2015-08-01 13:03:40.563:DBUG:oejsh.ContextHandler:qtp971848845-22: scope null||/ @ o.e.j.w.WebAppContext@13fee20c{/,file:///tmp/jetty-0.0.0.0-8503-test1_war.war-_-admin.bamidbarconnect.com-5510006462624235005.dir/webapp/,AVAILABLE,admin.bamidbarconnect.com}{/home/sjsobol/jettybase/wars/test1_war.war}
> 2015-08-01 13:03:40.564:DBUG:oejsh.ContextHandler:qtp971848845-22: context=||/ @ o.e.j.w.WebAppContext@13fee20c{/,file:///tmp/jetty-0.0.0.0-8503-test1_war.war-_-admin.bamidbarconnect.com-5510006462624235005.dir/webapp/,AVAILABLE,admin.bamidbarconnect.com}{/home/sjsobol/jettybase/wars/test1_war.war}
> 2015-08-01 13:03:40.564:DBUG:oejs.session:qtp971848845-22: sessionManager=org.eclipse.jetty.server.session.HashSessionManager@64616ca2
> 2015-08-01 13:03:40.565:DBUG:oejs.session:qtp971848845-22: session=null
> 2015-08-01 13:03:40.565:DBUG:oejs.ServletHandler:qtp971848845-22: servlet ||/ -> Servlet@d97c6a25==com.example.test.Servlet,-1,true
> 2015-08-01 13:03:40.565:DBUG:oejs.ServletHandler:qtp971848845-22: chain=null
> 2015-08-01 13:03:40.571:DBUG:oejs.Server:qtp971848845-22: RESPONSE for / h=true
> 200 null
> Content-Type: text/plain;charset=iso-8859-1
>
>
> 2015-08-01 13:03:40.571:DBUG:oejs.HttpChannelState:qtp971848845-22: HttpChannelState@73b0e2a8{s=DISPATCHED a=null i=true r=!P!U w=false} unhandle DISPATCHED
> 2015-08-01 13:03:40.572:DBUG:oejs.HttpChannel:qtp971848845-22: Commit HTTP/1.1{s=200,h=1} to HttpChannelOverHttp@742d796f{r=1,c=true,a=COMPLETED,uri=/}
> 2015-08-01 13:03:40.572:DBUG:oejs.HttpChannel:qtp971848845-22: Commit failed
> org.eclipse.jetty.io.EofException
>     at org.eclipse.jetty.server.HttpConnection$SendCallback.reset(HttpConnection.java:606)
>     at org.eclipse.jetty.server.HttpConnection$SendCallback.access$300(HttpConnection.java:576)
>     at org.eclipse.jetty.server.HttpConnection.send(HttpConnection.java:510)
>     at org.eclipse.jetty.server.HttpChannel.sendResponse(HttpChannel.java:614)
>     at org.eclipse.jetty.server.HttpChannel.write(HttpChannel.java:668)
>     at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:172)
>     at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:158)
>     at org.eclipse.jetty.server.HttpOutput.close(HttpOutput.java:206)
>     at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:49)
>     at org.eclipse.jetty.server.ResponseWriter.close(ResponseWriter.java:163)
>     at org.eclipse.jetty.server.Response.closeOutput(Response.java:982)
>     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:425)
>     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:192)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:57)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>     at java.lang.Thread.run(Thread.java:745)
> 2015-08-01 13:03:40.577:DBUG:oejs.HttpOutput:qtp971848845-22: 
> org.eclipse.jetty.io.EofException
>     at org.eclipse.jetty.server.HttpConnection$SendCallback.reset(HttpConnection.java:606)
>     at org.eclipse.jetty.server.HttpConnection$SendCallback.access$300(HttpConnection.java:576)
>     at org.eclipse.jetty.server.HttpConnection.send(HttpConnection.java:510)
>     at org.eclipse.jetty.server.HttpChannel.sendResponse(HttpChannel.java:614)
>     at org.eclipse.jetty.server.HttpChannel.write(HttpChannel.java:668)
>     at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:172)
>     at org.eclipse.jetty.server.HttpOutput.write(HttpOutput.java:158)
>     at org.eclipse.jetty.server.HttpOutput.close(HttpOutput.java:206)
>     at org.eclipse.jetty.server.HttpWriter.close(HttpWriter.java:49)
>     at org.eclipse.jetty.server.ResponseWriter.close(ResponseWriter.java:163)
>     at org.eclipse.jetty.server.Response.closeOutput(Response.java:982)
>     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:425)
>     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:192)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:57)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>     at java.lang.Thread.run(Thread.java:745)
> 2015-08-01 13:03:40.580:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=330,l=17408,c=17408,r=17078]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} shutdownOutput: oshut=true, ishut=false
> 2015-08-01 13:03:40.580:DBUG:oeji.AbstractEndPoint:qtp971848845-22: onClose DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,CLOSED,in,OSHUT,-,-,171/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,54/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.582:DBUG:oejh.HttpParser:qtp971848845-22: close HttpParser{s=END,0 of 0}
> 2015-08-01 13:03:40.583:DBUG:oejh.HttpParser:qtp971848845-22: END --> CLOSE
> 2015-08-01 13:03:40.583:DBUG:oejs.HttpChannel:qtp971848845-22: HttpChannelOverHttp@742d796f{r=1,c=false,a=IDLE,uri=-} handle exit, result COMPLETE
> 2015-08-01 13:03:40.584:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=330,l=17408,c=17408,r=17078]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} parse HeapByteBuffer@6ba495a9[p=330,l=17408,c=17408,r=17078]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>} {}
> 2015-08-01 13:03:40.584:DBUG:oejh.HttpParser:qtp971848845-22: parseNext s=CLOSE HeapByteBuffer@6ba495a9[p=330,l=17408,c=17408,r=17078]={GET / HTTP/1.1\r\nH...: max-age=0\r\n\r\n<<<\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00>>>}
> 2015-08-01 13:03:40.585:WARN:oejh.HttpParser:qtp971848845-22: parse exception: java.lang.IllegalStateException: too much data seeking EOF in CLOSE for HttpChannelOverHttp@742d796f{r=1,c=false,a=IDLE,uri=-}
> 2015-08-01 13:03:40.585:DBUG:oejh.HttpParser:qtp971848845-22: 
> java.lang.IllegalStateException: too much data seeking EOF
>     at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:1226)
>     at org.eclipse.jetty.server.HttpConnection.parseRequestBuffer(HttpConnection.java:343)
>     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:226)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:192)
>     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:238)
>     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
>     at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:57)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
>     at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
>     at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
>     at java.lang.Thread.run(Thread.java:745)
> 2015-08-01 13:03:40.588:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} shutdownOutput: oshut=true, ishut=false
> 2015-08-01 13:03:40.597:DBUG:oeji.AbstractEndPoint:qtp971848845-22: onClose DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,CLOSED,in,OSHUT,-,-,188/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,69/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.598:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00} parsed false HttpParser{s=CLOSE,0 of 0}
> 2015-08-01 13:03:40.598:DBUG:oejs.HttpConnection:qtp971848845-22: releaseRequestBuffer HttpConnection@250d8672<--HeapByteBuffer@6ba495a9[p=0,l=0,c=17408,r=0]={<<<>>>GET / HTTP/1.1\r\nH...\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00}
> 2015-08-01 13:03:40.598:DBUG:oejis.SslConnection:qtp971848845-22: SslConnection@31c992f{NOT_HANDSHAKING,eio=-1/-1,di=-1} -> HttpConnection@250d8672<--null shutdownOutput: oshut=true, ishut=false
> 2015-08-01 13:03:40.598:DBUG:oeji.AbstractEndPoint:qtp971848845-22: onClose DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,CLOSED,in,OSHUT,-,-,189/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,71/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.599:DBUG:oejs.HttpConnection:qtp971848845-22: HttpConnection@250d8672<--null onFillable exit HttpChannelState@73b0e2a8{s=IDLE a=null i=true r=!P!U w=false}
> 2015-08-01 13:03:40.599:DBUG:oejis.SslConnection:qtp971848845-22: onFillable exit DecryptedEndPoint@b55bc40{/108.38.81.155:55118<->8503,CLOSED,in,OSHUT,-,-,190/30000,HttpConnection}->SelectChannelEndPoint@20f75d{/108.38.81.155:55118<->8503,CLOSED,ISHUT,OSHUT,-,-,71/30000,SslConnection}{io=0/0,kio=-1,kro=-1}
> 2015-08-01 13:03:40.600:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-22: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc ran org.eclipse.jetty.io.SelectChannelEndPoint$2@1769cfa3
> 2015-08-01 13:03:40.600:DBUG:oejuts.ExecuteProduceConsume:qtp971848845-22: EPR Prod/org.eclipse.jetty.io.ManagedSelector$SelectorProducer@24af36fc produce exit
>
> Jetty's probably seeing EOF because Firefox stops processing the transaction when it sees a mismatch between the hostname I requested and the certificate's CN, but I am not 100% sure of that.
>
> Hopefully someone can make some sense of all this. I'm not an SSL guru. :) And I'm trying to figure out the origin of the "bad_certificate" message, without any success. Googling isn't turning up any useful info so far.
>
> Thanks in advance.
>
>
> Steve Sobol - Lobos Studios wrote:
>
> It's really frustrating because during testing, once I figured out what I'd been screwing up, I fixed it and everything just worked.
>
> Steve Sobol - Lobos Studios wrote:
>
> Ok, but SSLContextFactory doesn't seem to be working either. I have two Comodo certificates in my keystore - let's call them www.a.com and www.b.com. I also have the Comodo intermediate CA certificates in the same keystore. Jetty only seems to be using www.a.com no matter which site I'm trying to pull up.
>
> Do I need to do anything special to enable SNI?
>
> Thanks as always,
>
> Steve "My middle name is SNI" Sobol ;)
>
>
> Joakim Erdfelt wrote:
>>
>> Filed issue for documentation - https://bugs.eclipse.org/bugs/show_bug.cgi?id=474067
>>
>>
>> Joakim Erdfelt / joakim@xxxxxxxxxxx
>>
>> On Fri, Jul 31, 2015 at 1:55 PM, Joakim Erdfelt <joakim@xxxxxxxxxxx> wrote:
>>>
>>> The ExtendedSslContextFactory existed as an interim Java 8 only extension for SslContextFactory, now that Jetty 9.3 is Java 8 entirely, there's no need for this class.
>>>
>>> The roles of ExtendedSslContextFactory has been merged into SslContextFactory itself.
>>> Part of commit https://github.com/eclipse/jetty.project/commit/c5e4abd792e7ed3f5e086d9835b25c5b93afe3d5
>>>
>>> The documentation references is a definite bug, ugh.
>>> Adding to documentation todos ... *grumble* *grumble*
>>>
>>>
>>> Joakim Erdfelt / joakim@xxxxxxxxxxx
>>>
>>> On Fri, Jul 31, 2015 at 12:40 PM, Steve Sobol - Lobos Studios <steve@xxxxxxxxxxxxxxxx> wrote:
>>>>
>>>> Hey all,
>>>>
>>>> I posted a few days ago about some weird behavior regarding SNI in the latest stable version of Jetty. Seems that Jetty is only responding to HTTPS requests with the *first* certificate in my keystore, even though I have more than one valid certificate there.
>>>>
>>>> In testing Bug 430951, I got everything to work *including* SNI. 
>>>>
>>>> So now I'm looking at this:
>>>>
>>>> https://bugs.eclipse.org/bugs/show_bug.cgi?id=430951#c18
>>>>
>>>> "I have committed the org/eclipse/jetty/util/ssl/ExtendedSslContextFactory.java
>>>>
>>>> If the KeyStore contains multiple X509 certificates, then the CN element 
>>>> of the distinguished name is used to select the certificate alias to use for
>>>> a connection.  Simple wildcard names (eg *.domain.com) are supported."
>>>>
>>>> But when I try this:
>>>>
>>>> <Configure id="sslContextFactory" class="org.eclipse.jetty.util.ssl.ExtendedSslContextFactory">
>>>>
>>>> I get a NoClassDefFoundError, and indeed, if I check jetty-ssl.jar, that class *is* missing.
>>>>
>>>> SNI doesn't work at all if I use org.eclipse.jetty.util.ssl.SslContextFactory.
>>>>
>>>> Help, please? What am I missing? The official documentation even *says* I need to use ExtendedSslContextFactory. http://www.eclipse.org/jetty/documentation/current/configuring-ssl.html#configuring-sslcontextfactory
>>>>
>>>>
>>>> -- 
>>>> Lobos Studios - Website and Mobile App Design & Development; IT Support; Computer Maintenance
>>>> Toll Free  877.919.4WEB - Apple Valley 760.684.8859 - Los Angeles 310.945.2410 - Cleveland 216.242.4010
>>>> www.LobosStudios.com * www.facebook.com/LobosStudios * @LobosStudios
>>>>
>>>>
>>>> _______________________________________________
>>>> jetty-users mailing list
>>>> jetty-users@xxxxxxxxxxx
>>>> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
>>>> https://dev.eclipse.org/mailman/listinfo/jetty-users
>>>
>>>
>>
>> _______________________________________________
>>
>> jetty-users mailing list
>>
>> jetty-users@xxxxxxxxxxx
>>
>> To change your delivery options, retrieve your password, or unsubscribe from this list, visit
>>
>> https://dev.eclipse.org/mailman/listinfo/jetty-users
>
>
> -- 
> Lobos Studios - Website and Mobile App Design & Development; IT Support; Computer Maintenance
> Toll Free  877.919.4WEB - Apple Valley 760.684.8859 - Los Angeles 310.945.2410 - Cleveland 216.242.4010
> www.LobosStudios.com * www.facebook.com/LobosStudios * @LobosStudios
>
>
> -- 
> Lobos Studios - Website and Mobile App Design & Development; IT Support; Computer Maintenance
> Toll Free  877.919.4WEB - Apple Valley 760.684.8859 - Los Angeles 310.945.2410 - Cleveland 216.242.4010
> www.LobosStudios.com * www.facebook.com/LobosStudios * @LobosStudios
>
>
> -- 
> Lobos Studios - Website and Mobile App Design & Development; IT Support; Computer Maintenance
> Toll Free  877.919.4WEB - Apple Valley 760.684.8859 - Los Angeles 310.945.2410 - Cleveland 216.242.4010
> www.LobosStudios.com * www.facebook.com/LobosStudios * @LobosStudios
>

Back to the top