第一个数据包尝试解析SNI,支持QUIC SNI的白名单
This commit is contained in:
@@ -1268,14 +1268,9 @@ int quic_process(struct streaminfo *pstream, struct _quic_context* _context, int
|
||||
}
|
||||
|
||||
is_gquic=is_quic_protocol(pstream, _context, (char *)udp_detail->pdata, udp_detail->datalen, &used_len);
|
||||
if(!_context->call_business)
|
||||
{
|
||||
return APP_STATE_GIVEME;
|
||||
}
|
||||
|
||||
if(is_gquic!=QUIC_VERSION_UNKNOWN)
|
||||
{
|
||||
if(_context->cb_version==0)
|
||||
if(_context->cb_version==0 && _context->call_business)
|
||||
{
|
||||
_context->cb_version=1;
|
||||
ret=quic_callPlugins(pstream, _context, &(_context->quic_info.quic_hdr.quic_version), sizeof(_context->quic_info.quic_hdr.quic_version), QUIC_USEING_VERSION_MASK, a_packet);
|
||||
@@ -1298,6 +1293,7 @@ int quic_process(struct streaminfo *pstream, struct _quic_context* _context, int
|
||||
if(is_gquic>=GQUIC_VERSION_Q001 && is_gquic<=GQUIC_VERSION_Q046)
|
||||
{
|
||||
ret=gquic_proc_unencrypt(pstream, _context, a_packet, (char *)udp_detail->pdata, udp_detail->datalen, &used_len);
|
||||
break;
|
||||
}
|
||||
|
||||
if( ((is_gquic>=MVFST_VERSION_00 && is_gquic<=MVFST_VERSION_0F) ||
|
||||
@@ -1320,11 +1316,14 @@ int quic_process(struct streaminfo *pstream, struct _quic_context* _context, int
|
||||
break;
|
||||
}
|
||||
|
||||
if(_context->call_business)
|
||||
|
||||
{
|
||||
ret=quic_callPlugins(pstream, _context, (char *)udp_detail->pdata, udp_detail->datalen, QUIC_APPLICATION_DATA_MASK, a_packet);
|
||||
if((ret&APP_STATE_DROPME) || (ret&APP_STATE_DROPPKT))
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
@@ -1336,12 +1335,12 @@ int quic_process(struct streaminfo *pstream, struct _quic_context* _context, int
|
||||
}
|
||||
}
|
||||
|
||||
if(_context->quic_info.quic_hdr.is_reset)
|
||||
if(_context->is_quic==TRUE)
|
||||
{
|
||||
if(_context->quic_info.quic_hdr.is_reset && _context->call_business)
|
||||
{
|
||||
return quic_callPlugins(pstream, _context, NULL, 0, QUIC_INTEREST_KEY_MASK, a_packet);
|
||||
if(_context->quic_info.quic_hdr.is_version_negotiation)
|
||||
}
|
||||
|
||||
if(_context->quic_info.quic_hdr.is_version_negotiation && _context->call_business)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user