On 12/02/2015 08:17 PM, Dave Zhu (yanbzhu) wrote:
> Hello all,
> 
> I¹ve written up Willy and Emeric¹s proposal and it seems to test fine, at
> least from a functionality standpoint.
> 
> I would appreciate it if interested parties would beat on this harder than
> I did to work out kinks.
> 
> To recap for those that are new:
> 
> You can now specify <path_to_cert> as a crt or a crt-list entry, but
> <path_to_cert> will not actually exist. Instead, there will be
> <path_to_cert>.rsa, <path_to_cert>.ecdsa and/or <path_to_cert>.dsa. The
> code will load what¹s available and create (up to) 7 unique SSL_CTX with
> the correct sets of keys and certs. It then adds these to the SNI lookup
> tree, and sets a default context if one has not been set.
> 
> A couple of things to note:
> 
> 1) The default context will be set to the SSL_CTX that contains the set of
> most oftenly used key formats. So currently, it will prefer contexts that
> contain RSA, ECDSA then DSA in that order. SSL_CTX¹s with more key types
> will be preferred over SSL_CTX¹s with fewer key types.
> 2) The code for processing the CN/SAN¹s is quite complex. I¹ve added as
> many comments as I thought was needed, but it still is not simple to read.
> The logic though is simple:
> 
> - Load info of each crt entry.
> - Iterate through all CN/SAN entries and map each entry to which key types
> contain it
> - Iterate through list of entries to create the requisite SSL_CTX¹s and
> add the SSL_CTX to the sni_tree based on the current CN/SAN
> 
> Time to process is O(N) where N=# of CN/SANs.
> 
> In the interest of not clogging up everyone¹s inboxes, I¹ve put the
> patches on pastebin, let me know if that works.
> 
> Patch 1 - http://pastebin.com/B9KXnEZN
> Patch 2 - http://pastebin.com/qFXq2Pbe
> Patch 3 - http://pastebin.com/F9Y1N2YN
> 
> Please take a look.
> -Dave
> 
> 
> On 12/1/15, 10:09 AM, "Willy Tarreau" <[email protected]> wrote:
> 
>> Hi Dave,
>>
>> On Tue, Dec 01, 2015 at 03:04:21PM +0000, Dave Zhu (yanbzhu) wrote:
>>> I apologize for not responding sooner, I was waiting for more comments
>>> before
>>> starting implementation, then this fell off my radar when other
>>> responsibilities picked up.
>>
>> No problem, we're all in the same situation, don't worry!
>>
>>> I???ve got some downtime and can start working on Willy???s proposal,
>>> if that
>>> will meet the requirements of the people here.
>>
>> That would be awesome! That said, don't put yourself under pressure,
>> yes it's something that people would love to have but don't stop all
>> your activities for this. I tend to think that there are people
>> volunteering for testing here given the demand, so do not hesitate
>> to post preview patches as you did initially.
>>
>> Cheers,
>> willy
>>
> 
> 

Hi Dave,

Thank you, now the feature is clearly less intrusive.

But i notice some inconsistencies.

Patch2 (crt conf keywoard):
If the file without key extension is present, this file is loaded but also the 
multi_load is called.

However in Patch3 (crt-list)
If the file without key extension is present, this file is loaded but the 
multi_load is NOT called.

There is a lot indentation issues in patch 2

In patch 2 it remains a FIXME comment:
// YANBZHU: FIXME

R,
Emeric

Reply via email to