On 11.12.12 00:53, Amos Jeffries wrote:
> Before the first reconfigure there *should* only be one Config object
> for the auth scheme, from the first configuration loading.
That doesn't match what I've seen - I've added debugging to the top of 
every function in auth_negotiate.cc.  I start the server (so not a 
reconfigure) and I get:
Auth::Negotiate::Config::configured() is called:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::init() is called:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::registerWithCacheManager() is called:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
         authenticateProgram: 0x7f9bc22fe830
I then make a request:
Auth::Negotiate::Config::type() is called:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::type() is called again:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::decode() is called:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::type() is called again:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::type() is called again:
        this: 0x7f9bc2301160
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0x7f9bc22fe830
Auth::Negotiate::Config::fixHeader() is called:
        this: 0x7f9bc1bd0520
        negotiateConfig: 0x7f9bc1bd0520
        authenticateProgram: 0
 From the above debugging, it seems the only method being called on the 
negotiateConfig instance is fixHeader(), and the negotiateConfig 
instance never has authenticateProgram set.
I'm not sure where authenticateProgram is actually being set - the only 
place within auth_negotiate.cc that I can see it being set is 
Auth::Negotiate::Config::parse(), but that function doesn't ever seem to 
be called (at least, debugs() statements placed in that function don't 
produce any logging).
If negotiateConfig (0x7f9bc1bd0520) is the *current* configuration, what 
is 0x7f9bc2301160 in the above debugging?
Where is negotiateConfig initialised with the current configuration?
-- 
  - Steve Hill
    Technical Director
    Opendium Limited     http://www.opendium.com
Direct contacts:
    Instant messager: xmpp:steve_at_opendium.com
    Email:            steve_at_opendium.com
    Phone:            sip:steve_at_opendium.com
Sales / enquiries contacts:
    Email:            sales_at_opendium.com
    Phone:            +44-844-9791439 / sip:sales_at_opendium.com
Support contacts:
    Email:            support_at_opendium.com
    Phone:            +44-844-4844916 / sip:support_at_opendium.com
Received on Tue Dec 11 2012 - 09:33:33 MST
This archive was generated by hypermail 2.2.0 : Tue Dec 11 2012 - 12:00:07 MST